diff --git a/xwork-core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java b/xwork-core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java index d2803e9e6..10df8073d 100644 --- a/xwork-core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java +++ b/xwork-core/src/main/java/com/opensymphony/xwork2/validator/validators/RegexFieldValidator.java @@ -34,6 +34,7 @@ import java.util.regex.Pattern; *
true.true.true.
*/
- public void setCaseSensitive(String caseSensitive) {
- if (parse) {
- this.caseSensitive = (Boolean) parse(caseSensitive, Boolean.class);
- } else {
- this.caseSensitive = Boolean.parseBoolean(caseSensitive);
- }
+ public void setCaseSensitive(Boolean caseSensitive) {
+ this.caseSensitive = caseSensitive;
+ }
+
+ /**
+ * Allows specify caseSensitive param as an OGNL expression
+ */
+ public void setCaseSensitiveExpression(String caseSensitiveExpression) {
+ this.caseSensitive = (Boolean) parse(caseSensitiveExpression, Boolean.class);
}
/**
@@ -154,12 +170,15 @@ public class RegexFieldValidator extends FieldValidatorSupport {
* Sets whether the expression should be trimed before matching.
* Default is true.
*/
- public void setTrim(String trim) {
- if (parse) {
- this.trim = (Boolean) parse(trim, Boolean.class);
- } else {
- this.trim = Boolean.parseBoolean(trim);
- }
+ public void setTrim(Boolean trim) {
+ this.trim = trim;
+ }
+
+ /**
+ * Allows specify trim param as an OGNL expression
+ */
+ public void setTrimExpression(String trimExpression) {
+ this.trim = (Boolean) parse(trimExpression, Boolean.class);
}
}
diff --git a/xwork-core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java b/xwork-core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java
index ad585e393..bebf2554c 100644
--- a/xwork-core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java
+++ b/xwork-core/src/test/java/com/opensymphony/xwork2/validator/RegexFieldValidatorTest.java
@@ -40,7 +40,7 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("^Sec.*");
+ validator.setRegex("^Sec.*");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName("username");
validator.setValueStack(ActionContext.getContext().getValueStack());
@@ -60,8 +60,8 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setTrim("false");
- validator.setExpression("^Sec.*\\s");
+ validator.setTrim(false);
+ validator.setRegex("^Sec.*\\s");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName("username");
validator.setValueStack(ActionContext.getContext().getValueStack());
@@ -81,7 +81,7 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("^Sec.*");
+ validator.setRegex("^Sec.*");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName("username");
validator.setValueStack(ActionContext.getContext().getValueStack());
@@ -106,7 +106,7 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("^Sec.*");
+ validator.setRegex("^Sec.*");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName(null);
validator.setValueStack(ActionContext.getContext().getValueStack());
@@ -120,14 +120,14 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
public void testGetExpression() throws Exception {
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("^Hello.*");
- assertEquals("^Hello.*", validator.getExpression());
+ validator.setRegex("^Hello.*");
+ assertEquals("^Hello.*", validator.getRegex());
}
public void testIsTrimmed() throws Exception {
RegexFieldValidator validator = new RegexFieldValidator();
assertEquals(true, validator.isTrimed());
- validator.setTrim("false");
+ validator.setTrim(false);
assertEquals(false, validator.isTrimed());
}
@@ -139,7 +139,7 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("^Sec.*");
+ validator.setRegex("^Sec.*");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName("username");
validator.setValueStack(ActionContext.getContext().getValueStack());
@@ -159,7 +159,7 @@ public class RegexFieldValidatorTest extends XWorkTestCase {
ActionContext.getContext().setValueStack(stack);
RegexFieldValidator validator = new RegexFieldValidator();
- validator.setExpression("[0-9][0-9]");
+ validator.setRegex("[0-9][0-9]");
validator.setValidatorContext(new GenericValidatorContext(new Object()));
validator.setFieldName("age");
validator.setValueStack(ActionContext.getContext().getValueStack());