An abstract base class that adds in the capability to populate the stack with a fake parameter map when a conversion error has occurred and the 'repopulateField' property is set to "true".
The capability of auto-repopulating the stack with a fake parameter map when a conversion error has occurred can be done with 'repopulateField' property set to "true".
This is typically usefull when one wants to repopulate the field with the original value when a conversion error occurred. Eg. with a textfield that only allows an Integer (the action class have an Integer field declared), upon conversion error, the incorrectly entered integer (maybe a text 'one') will not appear when dispatched back. With 'repopulateField' porperty set to true, it will, meaning the textfield will have 'one' as its value upon conversion error.
<!-- myJspPage.jsp --> <ww:form action="someAction" method="POST"> .... <ww:textfield label="My Integer Field" name="myIntegerField" /> .... <ww:submit /> </ww:form>
<!-- xwork.xml --> <xwork> <include file="xwork-default.xml" /> .... <package name="myPackage" extends="xwork-default"> .... <action name="someAction" class="example.MyActionSupport.java"> <result name="input">myJspPage.jsp</result> <result>success.jsp</result> </action> .... </package> .... </xwork>
<!-- MyActionSupport.java --> public class MyActionSupport extends ActionSupport { private Integer myIntegerField; public Integer getMyIntegerField() { return this.myIntegerField; } public void setMyIntegerField(Integer myIntegerField) { this.myIntegerField = myIntegerField; } }
<!-- MyActionSupport-someAction-validation.xml --> <validators> ... <field name="myIntegerField"> <field-validator type="conversion"> <param name="repopulateField">true</param> <message>Conversion Error (Integer Wanted)</message> </field-validator> </field> ... </validators>
@author tm_jee
@version $Date$ $Id$