struts2 - 如何防止struts中出现通配符命名空间?

标签 struts2 struts2-namespace

我遇到了一个问题,在以下情况下无法找到关键字来进行谷歌搜索:

<package name="Main" namespace="/" extends="struts-default">
    <action name="administrator" class="com.xyz.AdminAction">
        <result name="success">/WEB-INF/jsp/admin.jsp</result>
    </action>
</package>

以上网址应为http://xyz.com/administrator 并且效果很好。但是,如果我将 url 更改为 http://xyz.com/asdasd/asdasdasd/administrator 它仍然有效,但我不能接受这一点!所以任何设置只告诉struts http://xyz.com/administrator 被接受吗?谢谢!

最佳答案

alwaysSelectFullNamespace 属性设置为 true

来自struts-default.properties:

### Whether to always select the namespace to be everything before the last slash or not
struts.mapper.alwaysSelectFullNamespace=true

首选 XML 配置,因此在 struts.xml 中:

<struts>
  <constant name="struts.mapper.alwaysSelectFullNamespace" value="true" />
  ...

关于struts2 - 如何防止struts中出现通配符命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26235071/

相关文章:

json - 在 struts 的 json 中仅传输类中的部分属性

error-handling - Struts2 2.0.x版处理未知操作

struts2 - Struts Hello world 示例 : There is no Action mapped for namespace [/] and action name error

java - Struts 2 从 xml 获取所有 namespace 和操作

java - 如果删除 struts2 .action 扩展名,为什么欢迎文件列表不起作用?

Java代码在任意输入中保留特殊字符

tomcat - 获取 404 There is no Action mapped for namespace 错误

java - struts 形式的多 Action

variables - 将 OGNL 表达式应用于上下文变量