struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jasper Rosenberg (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (WW-4144) Have ObjectFactory buildResult obey ParameterNameAware restrictions for a Result
Date Tue, 30 Jul 2013 12:01:53 GMT

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

Jasper Rosenberg commented on WW-4144:
--------------------------------------

[~lukaszlenart] Sorry, I didn't get a chance to look at the docs last week, I was out of town.
 Looks good though!
                
> Have ObjectFactory buildResult obey ParameterNameAware restrictions for a Result
> --------------------------------------------------------------------------------
>
>                 Key: WW-4144
>                 URL: https://issues.apache.org/jira/browse/WW-4144
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Core Actions
>    Affects Versions: 2.3.15.1
>            Reporter: Jasper Rosenberg
>            Assignee: Lukasz Lenart
>            Priority: Minor
>              Labels: ObjectFactory
>             Fix For: 2.3.16
>
>         Attachments: WW-4144.patch
>
>
> com.opensymphony.xwork2.ObjectFactory#buildResult(ResultConfig, Map), injects all of
the resultConfig parameters into the result after it has been built.  
> However, I'd like to be able to have my Result implement ParameterNameAware, and then
have buildResult obey its acceptableParameterName() result so I can filter out what parameters
can be injected.
> I'm sorry I don't have a proper patch, but it is a very small change.  Only call setProperty
on the result if it is not ParameterNameAware, or it is and the parameter name is acceptable.
> {code:java} 
> if ((!(result instanceof ParameterNameAware)) || (((ParameterNameAware) result).acceptableParameterName(paramEntry.getKey())))
{
>     reflectionProvider.setProperty(paramEntry.getKey(), paramEntry.getValue(), result,
extraContext, true);
> }
> {code}
> I have been running a Struts 2 app for 6 years with this change in place.  Just getting
around to suggesting it as a patch :)
> It does also look like the documentation for ParameterNameAware would need to be updated
to reflect that it can also be used for results, not just actions.

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

Mime
View raw message