struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dave Newton (JIRA)" <j...@apache.org>
Subject [jira] Commented: (WW-2485) Annotation validations (@StringFieldValidator, @StringLengthFieldValidator) doesn't work while @RequiredStringValidator doesn't do shortcircuiting
Date Wed, 13 Feb 2008 01:53:39 GMT

    [ https://issues.apache.org/struts/browse/WW-2485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43204#action_43204
] 

Dave Newton commented on WW-2485:
---------------------------------

If short-circuiting is on and one of the validators fails the rest won't fire.

@RequiredFieldValidator is probably not very helpful for text boxes since an empty text box
will still send back an empty string (not null), so it will never indicate an error for a
text field that's rendered on a page.

If the length validator isn't firing then post the minimal code and config to replicate the
issue and see what happens (I use them both without incident, so maybe some fresh eyes will
be more helpful than mine :)

> Annotation validations (@StringFieldValidator, @StringLengthFieldValidator) doesn't work
while @RequiredStringValidator doesn't do shortcircuiting
> --------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: WW-2485
>                 URL: https://issues.apache.org/struts/browse/WW-2485
>             Project: Struts 2
>          Issue Type: Bug
>          Components: XML Validators
>    Affects Versions: 2.0.11
>         Environment: Windows XP SP2, Struts 2.0.11, Jetty 6.0.1
>            Reporter: Zahid Nazir
>
> Hi,
> Validation (client or server side) doesn't occur and no message is thrown back when annotating
setters (I checked getter too but to no affect),see below
> //	@StringLengthFieldValidator(message="Default message", key="errors.required.first",
shortCircuit=true, trim=true, minLength="1", maxLength="35")
> //	@RequiredFieldValidator(message = "You must enter a string value for first...", key="errors.required.last",
shortCircuit=true)
> 	@RequiredStringValidator(message = "First", key="errors.required.first", shortCircuit=true,
trim=true)	
> 	public void setFirst(String first) {
> 		this.first = first;
> 	}
> Validation does get invoked for @RequiredStringValidator but then shortCircuit doesn't
seem to work. 
> Here is the class declaration
> @Validation()
> public class ProfileSearch extends ActionSupport {
> // getter
> //	@StringLengthFieldValidator(message="Default message", key="errors.required.last",
shortCircuit=true, trim=true, minLength="1", maxLength="35")	
> //	@RequiredFieldValidator(message = "You must enter a string value for last...", key="errors.required.last",
shortCircuit=true)
> 	@RequiredStringValidator(message = "Last", key="errors.required.last", shortCircuit=true,
trim=true)
> 	public String getLast() {
> 		return last;
> 	}
> // Setter
> //	@StringLengthFieldValidator(message="Default message", key="errors.required.last",
shortCircuit=true, trim=true, minLength="1", maxLength="35")
> //	@RequiredFieldValidator(message = "You must enter a string value for last...", key="errors.required.last",
shortCircuit=true)
> 	@RequiredStringValidator(message = "Last", key="errors.required.last", shortCircuit=true,
trim=true)	
> 	public void setLast(String last) {
> 		this.last = last;
> 	}
> and jsp snippet
> 		<s:form action="addressSearch!search" method="post" validate="false">
> 			<s:textfield name="first" value="%{first}" label="%{getText('label.first')}" labelposition="left"
tabindex="1" maxlength="35" required="true" />
> 			<s:textfield name="last" value="%{last}" label="%{getText('label.last')}" labelposition="left"
tabindex="2" maxlength="35" required="true"/>
> I also used ModelDriven validation using annotations and behavior is same. Adding namespace
attribute to form element and in struts.xml also doesn't help, neither do changing attribute
validate="true". I am not declaring any interceptors in struts.xml and am extending my package
from struts-default.
> Thanks for your help.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message