Validation 在struts 1.2中单击按钮验证表单

Validation 在struts 1.2中单击按钮验证表单,validation,struts,Validation,Struts,我试图在应用程序登录期间验证用户凭据详细信息。我已更改了struts配置和验证xml,但在页面加载本身时会调用验证。 我希望仅在单击按钮(提交按钮)时调用此验证。 我的struts配置如下所示: <action-mappings> <action attribute="loginForm" input="jsp/LoginPage.jsp" name="loginForm" parameter="method" path="/loginAction"

我试图在应用程序登录期间验证用户凭据详细信息。我已更改了struts配置和验证xml,但在页面加载本身时会调用验证。 我希望仅在单击按钮(提交按钮)时调用此验证。 我的struts配置如下所示:

<action-mappings>

    <action attribute="loginForm" input="jsp/LoginPage.jsp" name="loginForm"
        parameter="method" path="/loginAction" scope="request"
        type="com.pcs.bpems.portal.struts.action.LoginAction" validate="false">
        <forward name="schoolloginpage" path="/jsp/SchoolLoginPage.jsp" />

    </action>

    <action attribute="loginForm" input="/jsp/SchoolLoginPage.jsp" name="loginForm"
        parameter="method" path="/loginAction" scope="request"
        type="com.pcs.bpems.portal.struts.action.LoginAction" validate="true">
        <forward name="schoolloginpage" path="/jsp/SchoolLoginPage.jsp" />
        <forward name="schoolhomepage" path="/ownerHome.do?method=showHome" />
    </action>

我的验证xml如下所示

<form name="loginForm">
   <field property="userId" depends="required,minlength">
    <arg0 key="label.userName"/>        
     <var>
         <var-name>minlength</var-name> 
        <var-value>6</var-value> 
     </var>
      <arg1 key="${var:minlength}"  resource="false" />
  </field>
  <field property="password" depends="required,minlength">
    <arg0 key="label.password"/>        
     <var>
        <var-name>minlength</var-name> 
        <var-value>6</var-value> 
     </var>
      <arg1 key="${var:minlength}"  resource="false" />
 </field>
</form>       

最小长度
6.
最小长度
6.

@Anish请尝试使用此代码而不是您的第一个登录属性

<action path="/loginAction" parameter="method" 
    type="com.pcs.bpems.portal.struts.action.LoginAction" validate="false">
 <forward name="schoolloginpage" path="/jsp/SchoolLoginPage.jsp" />
</action>


我的想法是,加载表单时不需要表单名称,尽管将validate属性设置为false。让我知道这是否有帮助。

如果您没有通过
输入
,Struts将执行验证。有几种方法可以解决这个问题

直接向JSP请求 直接向JSP文件发出请求,而不是通过
org.apache.struts.action.ActionServlet

http://localhost:8080/MyContext/jsp/SchoolLoginPage.jsp
使用
转发
<action path="/login" forward="/jsp/SchoolLoginPage.jsp" /> 
http://localhost:8080/MyContext/login.do