关于写死namespace与拦截器结合使用导致死循环的问题:
在xxxx的项目中,我们需要根据不同的单位来换namespace
因此在Authorier这个拦截器中会根据当前用户所在的单位,将/zenzuguo这个namespace换成
用户所在单位的namespace如:(company-zenzuguo)
但是在webappdecoratorszenzuguoleft.htm文件中有一句:
<@ww.action name="bookAction" id="bookAction" namespace="/zenzuguo"></@ww.action>
当碰到这个的时候,就自动解释成:="/zenzuguo/bookAction.action
但这个action又会被Authorier拦截器拦截,并将"/zenzuguo/bookAction.action
替换成/company-zenzuguo/bookAction.action
然后重定向到/company-zenzuguo/bookAction.action这个action
要展示的页面中又include了包括了zenzuguoleft.htm但是一碰到这个就会被拦截并替换
这样就变成死循环了,
建议需要在很多不同的namespace下使用的action在配置的时候不要写死namespace,
配置文件如下:
再将需要使用这个action的namespace extends这个namespace
如:
在html页面引用的时候尽量不要写成:
<@ww.action name="bookAction" id="bookAction" namespace="/zenzuguo"></@ww.action>
推荐的写法:
这样的标签中加namespace属性,写成:
<@ww.action name="bookAction" id="bookAction"></@ww.action>