Hi,
I am trying to use
Struts Validation. But I didn�t get , Please help me to solve it.
I am getting error message as validateLoginForm is not defined.
Here are the files I am using
Login.jsp
<html:form action="/login" method="post" onsubmit="validateLoginForm();">
.
.
.
.
<html:text property="userName" styleClass="txtstyle" size="20" maxlength="15"/>
<html

assword property="password" styleClass="txtstyle" size="20" maxlength="15"/>
<html:javascript formName="loginForm"/>
</html:form>
</body>
</html:html>
struts-config.xml
<form-bean name="loginForm" type="com.newhorizon.vrm.web.form.common.LoginForm" />
<action
attribute="loginForm"
input="/jsp/common/login.jsp"
name="loginForm"
path="/login"
validate=�true�
type="com.newhorizon.vrm.web.action.common.LoginAction">
<forward name="loginfailure" path="/jsp/common/login.jsp" />
<forward name="loginsuccess" path="/jsp/common/home.jsp" />
</action>
<!-- Message Resources -->
<message-resources parameter="com.newhorizon.vrm.web.ApplicationResources" />
<!-- Validator plugin -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
Validation.xml
<!-- Login form Validation-->
<!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//
DTD Commons Validator Rules Configuration 1.2//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_2_0.dtd">
<form-validation>
<formset>
<form name="loginForm">
<field property="userName" depends="required"> <arg0 key="userName"/>
</field>
<field property="password" depends="required,mask">
<arg0 key="password"/>
<var>
<var-name>mask</var-name>
<var-value>^[0-9a-zA-Z]*$</var-value>
</var>
</field>
</form>
</formset>
</form-validation>
LoginForm.java
import org.apache.struts.validator.*;
public class LoginForm extends ValidatorForm {
private
String userName = null;
private String password = null;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
LoginAction.java
public class LoginAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)throws IOException, ServletException
{
System.out.println("insideerrors : " );
LoginForm loginform =(LoginForm) form;
String username = loginform.getUserName();
String password = loginform.getPassword();
if(username.length()!=0)
{
String res =username+"<br>"+password;
javax.servlet.http.HttpSession session = request.getSession();
session.setAttribute("result",res);
return mapping.findForward("loginsuccess");
}
else
{
ActionErrors errors = new ActionErrors();
errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.global"));
saveErrors(request,errors);
System.out.println("errors : " + errors);
return(mapping.findForward("loginfailure"));
}
}
}
ApplicationResources.properties
errors.nulluserName='enter your ID
errors.nullpassword=enter your PASSWORD
errors.global=DOES NOT MATCH