struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ken McWilliams <ken.mcwilli...@gmail.com>
Subject Re: Interceptor in various struts.xml
Date Tue, 27 Aug 2013 23:56:43 GMT
Not looking that closely but both your packages extend "struts-default" if
you want the interceptors/results of package "default" to be available to
package "M1" you should extend "default" on that package rather than
"struts-default"...


On Tue, Aug 27, 2013 at 5:04 PM, Thomas Lionel SMETS (prof) <
tsmets@a3-system.eu> wrote:

>  So, I found a solution to the issue.
> Defining the MDC-interceptor is done like this :
> <?xml version="1.0" encoding="UTF-8" ?>
>
> <!DOCTYPE struts PUBLIC
>   "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
>   "http://struts.apache.org/dtds/struts-2.3.dtd"<http://struts.apache.org/dtds/struts-2.3.dtd>
> >
> <struts>
>     <package name="default" namespace="/" extends="struts-default">
>         <interceptors>
>             <interceptor name="MDC"
> class="be.a3-system.util.MdcLoggingUtility">
>             </interceptor>
>
>             <interceptor-stack name="MyStack">
>                 <interceptor-ref name="MDC" ></interceptor-ref>
>
>
>                 <interceptor-ref name="params">
>                     <param name="acceptParamNames">^[a-zA-Z0-9_]+$</param>
>                     <param name="paramNameMaxLength">40</param>
>                 </interceptor-ref>
>
>                 <interceptor-ref name="timer" >
>                     <param name="logLevel">info</param>
>                 </interceptor-ref>
>
>                 <interceptor-ref name="defaultStack" />
>             </interceptor-stack>
>         </interceptors>
>
>         <default-interceptor-ref name="MyStack" />
>
>         <action name="Hello" class="be.a3-system.action.HelloAction">
>             <result name="success">/WEB-INF/Hello.jsp</result>
>             <param name="scenario">DEFAULT</param>
>         </action>
>
>         <action name="*" class="be.a3-system.action.CatchAllAction">
>             <result name="success">/WEB-INF/CatchAll.jsp</result>
>         </action>
>
>     </package>
>
>     <include file="m1/struts.xml" />
>     <include file="m2/struts.xml" />
>
> </struts>
>
> But this interceptor is not propagated to the m1/struts.xml &
> m2/struts.xml.
> The interceptor needs to be added to the included files.
> With something like this :
>
> <?xml version="1.0" encoding="UTF-8" ?>
>
> <!DOCTYPE struts PUBLIC
>   "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
>   "http://struts.apache.org/dtds/struts-2.3.dtd"<http://struts.apache.org/dtds/struts-2.3.dtd>
> >
> <struts>
>     <package name="M1" namespace="/m1" extends="struts-default">
>
>         <interceptors>
>             <interceptor name="MDC"
> class="be.a3-system.util.MdcLoggingUtility">
>             </interceptor>
>
>             <interceptor-stack name="MyM1Stack">
>                 <interceptor-ref name="MDC" ></interceptor-ref>
>
>
>                 <interceptor-ref name="params">
>                     <param name="acceptParamNames">^[a-zA-Z0-9_]+$</param>
>                     <param name="paramNameMaxLength">40</param>
>                 </interceptor-ref>
>
>                 <interceptor-ref name="timer" >
>                     <param name="logLevel">info</param>
>                 </interceptor-ref>
>
>                 <interceptor-ref name="defaultStack" />
>             </interceptor-stack>
>         </interceptors>
>
>         <default-interceptor-ref name="MyM1Stack" />
>
>         <action name="Hello" class="be.a3-system.action.HelloAction">
>             <result name="success">/WEB-INF/Hello.jsp</result>
>             <param name="scenario">M1</param>
>         </action>
>
>         <action name="*" class="be.a3-system.action.CatchAllAction">
>             <result name="success">/WEB-INF/CatchAll.jsp</result>
>         </action>
>
>     </package>
>
> </struts>
>
>
>
>
>
>
>
> \T,
>
>
>
> On 27/08/13 13:55, Dave Newton wrote:
>
> What doesn't work?
>
> Dave
>  On Aug 27, 2013 7:08 AM, "Thomas Lionel SMETS (prof)" <tsmets@a3-system.eu> <tsmets@a3-system.eu>
> wrote:
>
>
>  I created my interceptor stack in the top-level struts.xml, like this :
> <!DOCTYPE struts PUBLIC
>   "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
>   "http://struts.apache.org/dtds/struts-2.3.dtd" <http://struts.apache.org/dtds/struts-2.3.dtd><http://struts.apache.org/dtds/struts-2.3.dtd>
<http://struts.apache.org/dtds/struts-2.3.dtd>
>
>   <struts>
>
>     <package name="default" namespace="/" extends="struts-default">
>
>         <interceptors>
>             <interceptor name="logging"
> class="com.mysite.common.MdcLoggingUtility"/>
>             <interceptor-stack name="MyStack">
>                 <interceptor-ref name="params">
>                     <param name="acceptParamNames">^[a-zA-Z0-9_]+$</param>
>                     <param name="paramNameMaxLength">40</param>
>                 </interceptor-ref>
>                 <interceptor-ref name="timer" >
>                     <param name="logLevel">info</param>
>                 </interceptor-ref>
>                 <interceptor-ref name="defaultStack" />
>             </interceptor-stack>
>         </interceptors>
>
>         <default-interceptor-ref name="MyStack" />
>
> ...
>
>     <include file="module_1/struts.xml" />
>     <include file="module_2/struts.xml" />
> </struts>
>
>
> I have tried different declaration in the submodules but thay all seems to
> not thoroughly work.
> So having the same declaration or the same declaration with different name
> for the interceptor or using "MyStack" in the extends ...
>
>
> Any idea would be appreaciated.
>
> Tx,
>
>
>
>
>
> --
> Thomas Lionel SMETS, CISSP (385434)
> *m :* +32 497 44 68 12
> *ph :* +32 2 852 3341
> *skype :* thomas.lionel.smets
>
>
> PGP = FDF0 8FB8 4F37 3F79 1011 05AB 0DCE 9BAB 5DD0 0E10
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message