[
https://issues.apache.org/jira/browse/WW-3533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lukasz Lenart updated WW-3533:
------------------------------
Fix Version/s: (was: 3.0)
2.3.x
> Using @VisitorFieldValidator loses TextProvider from action
> -----------------------------------------------------------
>
> Key: WW-3533
> URL: https://issues.apache.org/jira/browse/WW-3533
> Project: Struts 2
> Issue Type: Bug
> Components: Other
> Affects Versions: 2.2.1
> Environment: Tomcat6 + WindowsXP + Spring + Convention Plugin
> Reporter: Rikard Swahn
> Fix For: 2.3.x
>
> Attachments: VisitorFieldValidator.patch
>
> Original Estimate: 1h
> Remaining Estimate: 1h
>
> I'm validating form data posted to a modeldriven action, with
> @VisitorFieldValidator applied to the getModel() method. In the object
> returned by getModel(), I have for example
> @RequiredStringValidator(key="property") on a set method. When adding an
> error and resolving the property, the TextProvider from the action is not
> used, but instead, Struts 2 attempts to resolve the property via the visited
> object, which fails.
> I think have found the problem. In
> DelegatingValidatorContext.makeTextProvider(Object object, LocaleProvider
> localeProvider), the method expects object to be the action instance, but in
> VisitorFieldValidator, makeTextProvider is called with the visitor object
> instead of the action instance. If called with action instance, property
> resolving works.
> I saw the same problem in an old issue, but then XML validation was used:
> http://jira.opensymphony.com/browse/XW-501
> Patch included.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira