在struts2 struts.xml中混合正则表达式和通配符

时间:2012-11-02 13:27:00

标签: regex struts2 action-mapping

关注http://struts.apache.org/2.2.3/docs/wildcard-mappings.html,以下配置工作

通配符

<action name="/drill/*" class="example.DrillAction" method="{1}">
    <result name="success" type="freemarker">/drill-{1}.ftl</result>
</action>

正则表达式也适用

<action name="/{group}/drill/index" class="example.DrillAction" method="index">
    <result name="success" type="freemarker">/drill-index.ftl</result>
</action>

但我没有在动作配置中混合使用通配符和正则表达式,如下所示:

<action name="/{group}/drill/*" class="example.DrillAction" method="{1}">
    <result name="success" type="freemarker">/drill-{1}.ftl</result>
</action>

当我访问http-path-to-host / rs6k / drill / index 时,会出现 404 错误:There is no Action mapped for namespace [/] and action name [rs6k/drill/index] associated with context path [].

我可以在struts.xml配置中混合正则表达式和通配符吗?

1 个答案:

答案 0 :(得分:1)

您确定已阅读所有有关通配符映射的内容吗?

<action name="/{group}/drill/{some}" class="example.DrillAction" method="{2}">
  <result name="success" type="freemarker">/drill-{2}.ftl</result>
</action>