com.opensymphony.xwork2.validator.validators
Class RepopulateConversionErrorFieldValidatorSupport
java.lang.Object
com.opensymphony.xwork2.validator.validators.ValidatorSupport
com.opensymphony.xwork2.validator.validators.FieldValidatorSupport
com.opensymphony.xwork2.validator.validators.RepopulateConversionErrorFieldValidatorSupport
- All Implemented Interfaces:
- FieldValidator, ShortCircuitableValidator, Validator
- Direct Known Subclasses:
- ConversionErrorFieldValidator
public abstract class RepopulateConversionErrorFieldValidatorSupport
- extends FieldValidatorSupport
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>
- Version:
- $Date: 2009-08-12 20:13:44 +0200 (Mi, 12 Aug 2009) $ $Id: RepopulateConversionErrorFieldValidatorSupport.java 2036 2009-08-12 18:13:44Z musachy $
- Author:
- tm_jee
Methods inherited from class com.opensymphony.xwork2.validator.validators.ValidatorSupport |
addActionError, addFieldError, conditionalParse, getDefaultMessage, getFieldValue, getMessage, getMessageKey, getMessageParameters, getParse, getValidatorContext, isShortCircuit, setDefaultMessage, setMessageKey, setMessageParameters, setParse, setShortCircuit, setValidatorContext, setValueStack |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RepopulateConversionErrorFieldValidatorSupport
public RepopulateConversionErrorFieldValidatorSupport()
getRepopulateField
public String getRepopulateField()
setRepopulateField
public void setRepopulateField(String repopulateField)
validate
public void validate(Object object)
throws ValidationException
- Description copied from interface:
Validator
- The validation implementation must guarantee that setValidatorContext will
be called with a non-null ValidatorContext before validate is called.
- Parameters:
object
- the object to be validated.
- Throws:
ValidationException
- is thrown if there is validation error(s).
repopulateField
public void repopulateField(Object object)
throws ValidationException
- Throws:
ValidationException
doValidate
protected abstract void doValidate(Object object)
throws ValidationException
- Throws:
ValidationException
Copyright © 2009 OpenSymphony. All Rights Reserved.