Struts validator - Java - Programmation
Marsh Posté le 24-08-2005 à 19:35:52
t'as demandé la validation de ton form et t'as pas implémenté de validator
Marsh Posté le 25-08-2005 à 17:05:24
J'ai réussi !!
Sisi j'avais bien implémenter mon validator seulement j'utilisais un validator-rule.xml d'une autre version de struts que j'avais copier sur un exemple...
Marsh Posté le 24-08-2005 à 19:30:33
J'ai un problème avec struts validator :
dans mon struts-config j'ai :
<form-bean
name="lookupForm"
type="eyrolles.LookupForm" />
...
<action
path="/lookup"
type="eyrolles.LookupAction"
name="lookupForm"
validate="true"
input="/pages/index.jsp"
scope="request">
<forward name="succes" path="/pages/cotation.jsp" />
<forward name="echec" path="/pages/index.jsp" />
</action>
ma classe LookupForm :
public class LookupForm extends ValidatorForm implements Serializable{
private String symbole = null;
//
public String getSymbole(){
return(symbole);
}
public void setSymbole(String symbole){
this.symbole = symbole;
}
}
dans validation.xml :
<form name="lookupForm">
<field property="symbole" depends="required">
<arg0 key="symbole.missing" />
</field>
</form>
ma page index.jsp :
<%@ page language="java" %>
<%@ taglib
uri="/WEB-INF/struts-html.tld"
prefix="html" %>
<html>
<head>
</head>
<body>
TEST
<html:errors/>
<html:form action="lookup">
<html:text property="symbole" />
<html:submit />
</html:form>
</body>
</html>
et j'obtiens dans Tomcat l'exception :
org.apache.commons.validator.ValidatorException: org.apache.struts.validator.FieldChecks.validateRequired(java.lang.Object, org.apache.commons.validator.ValidatorAction, org.apache.commons.validator.Field, org.apache.struts.action.ActionErrors, javax.servlet.http.HttpServletRequest)
at org.apache.commons.validator.ValidatorAction.loadValidationMethod(ValidatorAction.java:627)
at org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:557)
at org.apache.commons.validator.Field.validateForRule(Field.java:827)
at org.apache.commons.validator.Field.validate(Field.java:906)
at org.apache.commons.validator.Form.validate(Form.java:174)
Qu'est ce qui ne va pas ?