com.opensymphony.xwork2.validator.validators
Class RegexFieldValidator

java.lang.Object
  extended by com.opensymphony.xwork2.validator.validators.ValidatorSupport
      extended by com.opensymphony.xwork2.validator.validators.FieldValidatorSupport
          extended by com.opensymphony.xwork2.validator.validators.RegexFieldValidator
All Implemented Interfaces:
FieldValidator, ShortCircuitableValidator, Validator
Direct Known Subclasses:
EmailValidator

public class RegexFieldValidator
extends FieldValidatorSupport

Validates a string field using a regular expression.

You can mix normal params with expression aware params but thus was not tested Do not use ${regexExpression}, ${caseSensitiveExpression} and ${trimExpression} as an expression as this will turn into infinitive loop!
 
 <validators>
     <!-- Plain Validator Syntax -->
     <validator type="regex">
         <param name="fieldName">myStrangePostcode</param>
         <param name="regex"><![CDATA[([aAbBcCdD][123][eEfFgG][456])]]></param>
     </validator>

     <!-- Field Validator Syntax -->
     <field name="myStrangePostcode">
         <field-validator type="regex">
             <param name="regex"><![CDATA[([aAbBcCdD][123][eEfFgG][456])]]></param>
         </field-validator>
     </field>

     <!-- Field Validator Syntax with expressions -->
     <field name="myStrangePostcode">
         <field-validator type="regex">
             <param name="regexExpression">${regexValue}</param> <!-- will be evaluated as: String getRegexValue() -->
             <param name="caseSensitiveExpression">${caseSensitiveValue}</param> <!-- will be evaluated as: boolean getCaseSensitiveValue() -->
             <param name="trimExpression">${trimValue}</param> <!-- will be evaluated as: boolean getTrimValue() -->
         </field-validator>
     </field>
 </validators>
 
 

Version:
$Date$ $Revision$
Author:
Quake Wang

Field Summary
 
Fields inherited from class com.opensymphony.xwork2.validator.validators.ValidatorSupport
defaultMessage, log, messageKey, stack
 
Constructor Summary
RegexFieldValidator()
           
 
Method Summary
 String getRegex()
           
 boolean isCaseSensitive()
           
 boolean isTrimed()
           
 void setCaseSensitive(Boolean caseSensitive)
          Sets whether the expression should be matched against in a case-sensitive way.
 void setCaseSensitiveExpression(String caseSensitiveExpression)
          Allows specify caseSensitive param as an OGNL expression
 void setRegex(String regex)
          Sets the regular expression to be matched
 void setRegexExpression(String regexExpression)
          Sets the regular expression as an OGNL expression to be matched
 void setTrim(Boolean trim)
          Sets whether the expression should be trimed before matching.
 void setTrimExpression(String trimExpression)
          Allows specify trim param as an OGNL expression
 void validate(Object object)
          The validation implementation must guarantee that setValidatorContext will be called with a non-null ValidatorContext before validate is called.
 
Methods inherited from class com.opensymphony.xwork2.validator.validators.FieldValidatorSupport
getFieldName, getValidatorType, setFieldName, setValidatorType
 
Methods inherited from class com.opensymphony.xwork2.validator.validators.ValidatorSupport
addActionError, addFieldError, getDefaultMessage, getFieldValue, getMessage, getMessageKey, getMessageParameters, getValidatorContext, isShortCircuit, parse, setDefaultMessage, setMessageKey, setMessageParameters, setShortCircuit, setValidatorContext, setValueStack
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.opensymphony.xwork2.validator.Validator
getDefaultMessage, getMessage, getMessageKey, getMessageParameters, getValidatorContext, setDefaultMessage, setMessageKey, setMessageParameters, setValidatorContext, setValueStack
 

Constructor Detail

RegexFieldValidator

public RegexFieldValidator()
Method Detail

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).

getRegex

public String getRegex()
Returns:
Returns the regular expression to be matched.

setRegex

public void setRegex(String regex)
Sets the regular expression to be matched


setRegexExpression

public void setRegexExpression(String regexExpression)
Sets the regular expression as an OGNL expression to be matched


isCaseSensitive

public boolean isCaseSensitive()
Returns:
Returns whether the expression should be matched against in a case-sensitive way. Default is true.

setCaseSensitive

public void setCaseSensitive(Boolean caseSensitive)
Sets whether the expression should be matched against in a case-sensitive way. Default is true.


setCaseSensitiveExpression

public void setCaseSensitiveExpression(String caseSensitiveExpression)
Allows specify caseSensitive param as an OGNL expression


isTrimed

public boolean isTrimed()
Returns:
Returns whether the expression should be trimed before matching. Default is true.

setTrim

public void setTrim(Boolean trim)
Sets whether the expression should be trimed before matching. Default is true.


setTrimExpression

public void setTrimExpression(String trimExpression)
Allows specify trim param as an OGNL expression



Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.