Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Struts未验证表单输入中的电子邮件_Java_Forms_Validation_Struts - Fatal编程技术网

Java Struts未验证表单输入中的电子邮件

Java Struts未验证表单输入中的电子邮件,java,forms,validation,struts,Java,Forms,Validation,Struts,我有一个HTML表单,我试图使用Struts验证用户在注册网站之前是否输入了有效的电子邮件地址 提交表单时,不会出现任何验证,表单只是按原样提交到操作参数类 我是Struts新手,所以请假设我错过了显而易见的东西(因为我可能错过了) 我的表单如下所示(UserRegistrationAddForm.jsp): 堆栈跟踪来自于处理的下一步的错误,因此它不应该走那么远 有趣的是,堆栈中没有提到任何对我的操作类型的引用,例如:com.example.LTPATokenGenerationEnabled

我有一个HTML表单,我试图使用Struts验证用户在注册网站之前是否输入了有效的电子邮件地址

提交表单时,不会出现任何验证,表单只是按原样提交到操作参数类

我是Struts新手,所以请假设我错过了显而易见的东西(因为我可能错过了)

我的表单如下所示(UserRegistrationAddForm.jsp):

堆栈跟踪来自于处理的下一步的错误,因此它不应该走那么远


有趣的是,堆栈中没有提到任何对我的操作类型的引用,例如:com.example.LTPATokenGenerationEnabledBaseAction,所以我假设我配置错了什么东西?

我不确定,但是,也许您应该在表单bean标记中使用org.apache.struts.validator.DynaValidatorActionForm。

您使用默认堆栈吗?默认堆栈用于什么,对不起?通常在struts.xml上定义名称空间,您必须定义它使用的堆栈。这是struts2吗?还是struts1?你用的是什么版本?Struts 1?它在表单bean标记中声明为type属性。这就是你的意思吗?@Mikaveli,是的,是的,我已经做到了(我的struts-config.xml在上面的问题中)。
<form name="registrationAddForm" method="post" action="UserRegistrationAdd">
    <div class="form-label-holder">
        <label for="email"><fmt:message key="LOGON_ID" bundle="${storeText}" /><span class="mandatoryindicator"> *</span></label>
    </div>
    <div class="form-field-holder">
        <input id="email" class="required email" type="text" name="logonId" value="<c:out value="${paramSource.logonId}" />" />
    </div>
    <input type="image" src="<c:out value="${jspStoreImgDir}" />mobile/images/next-button.png" />
</form>
<struts-config>
    <form-beans>
        <form-bean name="UserRegAddForm"
            type="org.apache.struts.validator.DynaValidatorForm">
            <form-property name="logonId" type="java.lang.String" />
        </form-bean>
    </form-beans>
    <action
        parameter="com.example.UserRegistrationAddCmd"
        path="/UserRegistrationAdd" type="com.example.LTPATokenGenerationEnabledBaseAction"
        name="UserRegAddForm">
        <set-property property="https" value="0:1"/>
        <set-property property="authenticate" value="0:0"/>
    </action>
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames" value="/WEB-INF/validator-rules.xml"/>
    </plug-in>
</struts-config>
<form-validation>
    <form name="UserRegAddForm">
        <field property="logonId" depends="required,email">
            <arg key="registrationAddForm.logonId" />
        </field>
    </form>
</form-validation>
at com.example.BaseAction.executeAction(BaseAction.java:722)
    at com.example.struts.BaseAction.execute(BaseAction.java:150)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at com.example.struts.ECActionServlet.processRequest(ECActionServlet.java:218)
    at com.example.struts.ECActionServlet.doPost(ECActionServlet.java:174)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)