这个到没试过,不过我是用STRUTS的。

解决方案 »

  1.   

    为什么一定要用服务器端ejb验证呢?
      

  2.   

    这个到没试过,不过我是用STRUTS的。用STRUTS就行吗?STRUTS只不过是一个架构,还不是要用jsp来实现?
      

  3.   

    用javascript处理离开form中的文本框,
    然后在javascript中提交另外的form表单。服务器端根据提交的表单调用ejb处理检查只是可能要用到iframe
      

  4.   

    如非要的话,可以这样,写一个Bean,在里面写你的方法,再在jsp页面调用。import java.io.*;
    public class CheckForm{
     /* public: JavaScript 声明 */
     String CheckFormStr;
     /* public: 表单名称 */
     public String formName;
     public void setFormName(String formName){
       this.formName = formName;
     } /***************************************************************************\
      *        public: constructor functions
      *        构造函数
     \***************************************************************************/
     public CheckForm(){
       this.CheckFormStr =
         "<script ID=clientEventHandlersJS language=javascript>" + "\n" +
         "<!--" + "\n";
       this.neededFunction(); // load the needed functions
       this.CheckFormStr +=
         "function CheckTheForm() {" + "\n";
      }  /***************************************************************************\
       *        public: export javascript script
       *        输出 JAVASCRIPT 脚本
      \***************************************************************************/
      public String CheckFormScript() {
        this.CheckFormStr +=
            "return(true);" + "\n" +
            "}" + "\n" +
            "-->" + "\n" +
            "</script>" + "\n";
        return this.CheckFormStr;
      }  /***************************************************************************\
       *        public: check the numeric
       *        检查录入框值是否是数字
      \***************************************************************************/
      public void numericCheck(String inputName, String CheckMsg) {
        this.CheckFormStr +=
          "  if(fucCheckNUM(document."+formName+"."+inputName+".value) == 0) {" + "\n" +
          "    alert(\""+CheckMsg+".\");" + "\n" +
          "    document."+formName+"."+inputName+".focus();" + "\n" +
          "    return(false);" + "\n" +
          "  }" + "\n\n";
      }
    }jsp调用:
     CheckForm.numericCheck("number","对不起,号码只能输入数字!");但这样会使服务器开销比较大的,不是很好的办法。