I have some problems validating a form with validator framework under
struts 1.3.
After submitting, it forwards to "success" page even if the fields
were not filled properly.
(No exceptions are thrown).
Here's some of my code:
STRUTS-CONFIG.XML
<form-beans>
...
<form-bean
name="subjectForm"
type="tfc.controller.formbeans.SubjectForm" />
...
</form-beans>
<action-mappings>
<action
path="/SubjectInfoAction"
type="tfc.controller.actions.SubjectInfoAction"
name="subjectForm"
scope="request"
validate="true"
input="/pages/kindex.jsp">
<exception
key="errors.notFound"
path="Exception"
type="tfc.controller.exceptions.NotFoundException"/>
<forward name="success" path="/topics.jsp"/>
<forward name="studentSuccess" path="/studentTopics.jsp"/>
</action>
</action-mappings>
VALIDATION.XML
<formset>
<form name="subjectForm">
<field
property="subjectId"
depends="required">
<arg key="parameters.subjectId"/>
</field>
<field
property="studentId"
depends="integer">
<arg key="parameters.studentId"/>
</field>
</form>
</formset>
FORM (kindex.jsp)
<jsp:root
xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:html="http://struts.apache.org/tags-html"
xmlns:logic="http://struts.apache.org/tags-logic"
xmlns:bean="http://struts.apache.org/tags-bean"
version="1.2">
<jsp:directive.page contentType="text/html"/>
<jsp:text>
<html:html>
<body>
<html:errors />
<html:form action="SubjectInfoAction">
<html:text styleId="studentId"
property="studentId"/>
<html:text styleId="subjectId"
property="subjectId"/>
<html:submit property="submit" value="submit"/>
</html:form>
</body>
</html:html>
</jsp:text>
</jsp:root>
FORMBEAN (SubjectForm.java)
It extends ValidationActionForm and it has the getters and setters for
the attributes and some other methods.
It does not impelement reset() nor validate()
ACTION (SubjectInfoAction.java)
It just returns success forward.
PART OF THE LOG
As you can see, it does load 'validation.xml' and 'validation-rules.xml'.
03:03:15,281-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-No Configuration for this context. Initializing.
03:03:15,281-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-configuring cewolf app..
03:03:15,296-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-using storage class de.laures.cewolf.storage.TransientSessionStorage
03:03:15,296-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-using overlibURL etc/overlibCewolf.js
03:03:15,296-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-debugging is turned off
03:03:15,296-INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/TFC]
-...done.
03:03:16,015-INFO org.apache.struts.action.ActionServlet -Loading
chain catalog from
jar:file:/C:/Tomcat5.5/webapps/TFC/WEB-INF/lib/struts-core-1.3.5.jar!/org/apache/struts/chain/chain-config.xml
03:03:17,968-INFO org.apache.struts.validator.ValidatorPlugIn -Loading
validation rules file from '/WEB-INF/validation.xml'
03:03:18,000-INFO org.apache.struts.validator.ValidatorPlugIn -Loading
validation rules file from
'/org/apache/struts/validator/validator-rules.xml'
03:03:19,140-INFO org.apache.struts.tiles.TilesPlugin -Tiles
definition factory loaded for module ''.
...
RESULT
So, as I said before, the application does not crash, but it redirects
to success page even if some
fields' values are not correct.
For example:
In this case, although 'subjectId' is required, you can leave it empty.
Thanks,
Ramon
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]