【发布时间】:2014-10-29 10:20:29
【问题描述】:
在 Struts2 中是否可以将 URL/动作映射到不同的扩展?例如如果我的应用托管为
http://stack.com/myapp
我可以有 2 个网址吗
http://stack.com/myapp/act.action
和
http://stack.com/myapp/donoact.do
没有/act.do 和/donoact.action 的映射。即一个 URL 应该在单个扩展上可用。
使用<constant name="struts.action.extension" value="action,do" /> 可以在两个扩展程序上使用 URL。
【问题讨论】:
-
感谢 Aleksandr 的及时回复。但以上并没有解决我的问题。实际上,我需要在 *.action URL 上应用安全和其他过滤器并绕过 *.do。如果我使用“action.extension”,两个扩展都可以使用常量 URL。我不想要那个
-
所以你想要一些带有 .do 的动作和一些带有 .action 的动作?命名空间通常用于安全约束和过滤器。
-
你为什么要这样做?哪个是您真正的用例?您试图通过使用最有可能错误的工具(扩展名)来做出哪些区分? 小心the XY Problem
-
我同意安德里亚。感谢 Aleksandr,命名空间似乎是解决方案的更好方法。我已经向我的客户提出了解决方案,让我们看看他们同意什么。
标签: java struts2 xml-configuration