Struts 2映射特定命名空间的默认操作

时间:2013-04-22 17:03:30

标签: struts2 mapping

我希望在每个“/ mobile / *”网址上都有一个动作映射。

当我把下面的内容放在我的struts.xml中时:

<package name="default-mobile-action" extends="mobile-default">  
   <action name="*.*" class="ca.tink.vitrine.webapp.action.DefaultAction">         
   ....      
   </action>  
</package>

我的“/ mobile / *”网址转到默认操作,这是正确的。 但是当我像这样更改映射时(我在“/ mobile”上添加命名空间):

<package name="default-mobile-action" extends="mobile-default" namespace="/mobile">  
   <action name="*.*" class="ca.tink.vitrine.webapp.action.DefaultAction">         
   ....      
   </action>  
</package>

现在,“/ mobile / *”网址不会访问该操作(未找到任何操作...)

真的不是我期望的行为......

我错过了什么?

1 个答案:

答案 0 :(得分:1)

你可以试试这个......

struts.xml中:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <include file="mobile.xml"></include>
</struts>

mobile.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>

    <package name="mobile" extends="struts-default" namespace="/mobile">
    </package>
</struts>