Bonjour à tous,

je voudrais tester la validation de struts mais je n'y arrive pas

j'ai lu pas mal de chose sur internet et j'en ai retenu qu'il y avait 3 choses à parametrer :
- struts-config.xml
- validation.xml
- jsp

voilà ce que j'ai fait :

struts-config.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
 
<struts-config>
  <form-beans>
    <form-bean name="testForm" type="com.it.framework2.cinematique.DynaValidatorForm">
      <form-property name="test" type="java.lang.String" />
    </form-bean>   
  </form-beans>
  <action-mappings>
    <action name="testForm" include="/GN/jsp/test.jsp" parameter="method" path="/test" type="org.apache.struts.action.Action" validate="true">
      <forward name="success" path="/GN/jsp/test.jsp" />
    </action>
  </action-mappings>
  <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>
validation.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN" "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
<form-validation>
  <global>
  </global>
  <formset>
      <form name="testForm">
       <field property="test" depends="required">
       <arg0 key="test" resource="false"/>
      </field>
    </form>
  </formset>
</form-validation>
test.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html" %>
<html:errors/> 
<html:form action="test.do" method="post" enctype="multipart/form-data" onsubmit="return validateTestFormt(this);">
  <html:javascript formName="testForm" />
  <html:text property="test" value=""></html:text>
  <html:submit title="sumbit" value="ok"></html:submit>
</html:form>
Ai-je oublié quelque chose ? Parce que quand je test cette page, la validation ne marche pas

la validation javascript (coté client) jette l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
required is not defined (Ligne 143)
la validation java (coté serveur) jette l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
org.apache.struts.util.StrutsValidator
org.apache.commons.validator.ValidatorException: org.apache.struts.util.StrutsValidator
	at org.apache.commons.validator.ValidatorAction.loadValidationClass(ValidatorAction.java:646)
	at org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:555)
	at org.apache.commons.validator.Field.validateForRule(Field.java:827)
...
Quelqu'un saurait me tirer d'affaire ?

PoichOU