2013-02-10 2 views
0

Я делаю простую страницу входа и пытаюсь ее проверить с помощью struts ValidatorForm, но ее не работает. Но тот же код работал для DynaValidatorForm. Не в состоянии понять, в чем проблема. Он не показывает никаких ошибок при нажатии кнопки входа в систему. Вот мой код.
Struts 1.3 не удалось проверить использование xml ValidatorForm

login.jsp

<body> 
    <div style="color:red"> 
       <html:errors /> 
      </div> 
      <html:form action="/Login" > 
       User Name : <html:text name="LoginForm" property="username" /> <br> 
       Password : <html:password name="LoginForm" property="password" /> <br> 
       <html:submit value="Login" /> 
      </html:form> 
      </body> 

LoginAction.java

public class LoginAction extends Action 

{ public ActionForward execute(ActionMapping mapping, ActionForm form, 
     HttpServletRequest request, HttpServletResponse response) 
     throws Exception { 

    LoginForm loginForm=(LoginForm) form; 
    String userName = loginForm.getUsername(); 
     String password = loginForm.getPassword(); 
     if(userName.equals("sumeet")) 
     { 
      return mapping.findForward("success"); 
     } 
     else 
     { 
      return mapping.findForward("failure"); 
     } 

struts.config

<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd"> 
    <struts-config> 
    <form-beans> 
      <form-bean name="LoginForm" type="com.ibm.Forms.LoginForm" > 
      </form-bean> 
    </form-beans> 

     <global-exceptions> 
     </global-exceptions> 

     <global-forwards> 
     </global-forwards> 

     <action-mappings> 
      <action name="LoginForm" path="/Login" scope="session" input="/login.jsp" type="com.ibm.Action.LoginAction" cancellable="true" validate="true"> 
      <forward name="success" path="/success.jsp"/> 
      </action> 
     </action-mappings> 

     <message-resources parameter="test2.resources.ApplicationResources"/> 
     <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> 
    <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/> 
    </plug-in> 
    </struts-config> 

valdiation.xml

<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN" "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd" > 
    <form-validation> 

    <formset> 
      <form name="LoginForm"> 
       <field property="username" depends="required"> 
           </field> 

    <field property="password" depends="required,minlength"> 
      <arg1 key="${var:minlength}" name="minlength" resource="false"/> 
       <var> 
       <var-name>minlength</var-name> 
       <var-value>6</var-value> 
       </var> 
       </field> 
       </form> 
      </formset> 
    </form-validation> 

Спасибо.

+0

Любая помощь пожалуйста – sambot

ответ

0

Вам не хватает .do в атрибуте action в форме html. Вам не нужен атрибут name на обоих входах.

<html:form action="/Login.do" > 
    User Name : <html:text property="username" /> <br> 
    Password : <html:password property="password" /> <br> 
    <html:submit value="Login" /> 
</html:form> 
Смежные вопросы