警告:操作与允许的操作名称模式不匹配,清除它

时间:2015-03-07 15:37:59

标签: java regex struts2

我低于struts.xml

<action name="viewreports" class="com.mypackage.action.ViewReportsAction">
    <interceptor-ref name="notauth" />
    <interceptor-ref name="defaultStack" />
    <result>/staff-view-reports.jsp</result>
    <result name="index" type="redirect">/index.jsp</result>
</action>

<action name="viewdepartment" class="com.mypackage.action.ViewDepartmentAction">
    <interceptor-ref name="notauth" />
    <interceptor-ref name="defaultStack" />
    <result>/staff-view-department.jsp</result>
    <result name="input" type="redirectAction">viewreports</result>
    <result name="index" type="redirect">/index.jsp</result>
</action>

它做了它应该做的事情,但是这个警告出现在控制台中:

WARNING: Action ["viewdepartment"] does not match allowed action names pattern [[a-zA-Z0-9._!/\-]*], cleaning it up!

我的动作名称确实有问题吗?

1 个答案:

答案 0 :(得分:2)

该模式不允许在操作名称中使用双引号。动作名称和命名空间由动作映射器通过解析请求的URI来确定。此时,映射器正在尝试将操作映射设置为适当的操作名称和命名空间,并可能默认为""。并且它在清理时使用上述模式匹配操作名称。您的操作名称与该模式不匹配,因此您会收到警告。 xml配置看起来不错。