[
https://issues.apache.org/struts/browse/WW-2595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43643#action_43643
]
Jon Wilmoth commented on WW-2595:
---------------------------------
I haven't tried the same thing in the original package. As soon as I do I'll
update this ticket. When I entered the issue I wasn't sure if this should be
an enhancement or a bug. Reading
http://struts.apache.org/2.0.11.1/docs/package-configuration.html it says that
"The extends attribute is optional and allows one package to inherit the
configuration of one or more previous packages - including all interceptor,
interceptor-stack, and action configurations." This leads me to believe that
the interceptor's declaration should be inherited as packageB does extend
packageA.
> Overriding subset of interceptor params
> ---------------------------------------
>
> Key: WW-2595
> URL: https://issues.apache.org/struts/browse/WW-2595
> Project: Struts 2
> Issue Type: Bug
> Affects Versions: 2.0.11
> Reporter: Jon Wilmoth
>
> Trying to override one of three interceptor parameters in an action specific
> config using method #2 described in
> http://struts.apache.org/2.0.11.1/docs/interceptors.html#Interceptors-InterceptorParameterOverriding
> leaves the params that aren't overridden in the action (but defined in stack
> definition) null. Unfortunately, the other two parameters that I'm not
> overriding are not being taken from the default stack definition and are
> ending up as null on the interceptor. Below is a sample action config
> showing what I'm attempting...
> <package name="packageA"...>
> <interceptors>
> <interceptor name="myInterceptor" class="..."/>
> <interceptor-stack name="myStack">
> <interceptor-ref name="defaultStack"/>
> <interceptor-ref name="myInterceptor">
> <param name="paramA">defaultValueA</param>
> <param name="paramB">defaultValueB</param>
> <param name="paramC">defaultValueC</param>
> </interceptor-ref>
> </interceptor-stack>
> </package>
> With the following action config, the "myInterceptor" interceptor's paramA &
> paramB are null (causing the interceptor logic to break) and not
> "defaultValueA" and "defaultValueB" as expected/desired.
> <package name="packageB" extends="packageA"...>
> <action name="myAction" class="myActionClass">
> <interceptor-ref name="myStack">
> <param name="myInterceptor.paramC">actionSpecificValue</param>
> </interceptor-ref>
> </action>
> </package>
> BTW...defining the action with all parameters overridden (see below) works:
> <action name="myAction" class="myActionClass">
> <interceptor-ref name="myStack">
> <!-- same value as defined in "myStack" declaration -->
> <param name="myInterceptor.paramA">defaultValueA</param>
> <!-- same value as defined in "myStack" declaration -->
> <param name="myInterceptor.paramB">defaultValueB</param>
> <param name="myInterceptor.paramC">actionSpecificValue</param>
> </interceptor-ref>
> </action>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.