0

アプリケーションのログイン中にユーザー資格情報の詳細を検証しようとしています。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>       
4

2 に答える 2

1

@Anish 最初の LoginAction 属性の代わりにこのコードを試してください。

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

私の考えでは、フォームをロードするためにフォーム名は必要ありませんが、属性を false に検証する必要があります。これが役立つかどうか教えてください。

于 2013-10-12T19:07:29.597 に答える
0

を通過しない場合input、Struts が検証を実行します。それを解決するにはいくつかの方法があります。

JSP に直接リクエストする

を介してではなく、JSP ファイルに直接org.apache.struts.action.ActionServlet要求を行います。

http://localhost:8080/MyContext/jsp/SchoolLoginPage.jsp

とともにforward

<action path="/login" forward="/jsp/SchoolLoginPage.jsp" /> 

使用する:

http://localhost:8080/MyContext/login.do
于 2013-10-16T03:27:35.123 に答える