Struts2 Struts 2中的下划线和通配符操作映射

Struts2 Struts 2中的下划线和通配符操作映射,struts2,wildcard-mapping,Struts2,Wildcard Mapping,我正在使用Struts 2 webapp,其动作映射如下: 这是struts.xml的主文件: 看来通配符是松散匹配的,以支持某些遗留语法。因此,问题不在于下划线,而在于松散的匹配模式 从: 可以选择“松散地”匹配模式。当模式的结尾匹配\*[^*]\*$(通配符、无通配符、通配符)时,如果模式失败,它也会匹配,就像最后两个字符不存在一样。目标是支持传统的“*!*”语法,其中“!*”是可选的 看来最后一个下划线是“修剪”(虽然很明显,中间的动作名称不是)。奇怪的事+1@AndreaLigios感

我正在使用Struts 2 webapp,其动作映射如下:

这是struts.xml的主文件:


看来通配符是松散匹配的,以支持某些遗留语法。因此,问题不在于下划线,而在于松散的匹配模式

从:

可以选择“松散地”匹配模式。当模式的结尾匹配
\*[^*]\*$
(通配符、无通配符、通配符)时,如果模式失败,它也会匹配,就像最后两个字符不存在一样。目标是支持传统的
“*!*”
语法,其中
“!*”
是可选的


看来最后一个下划线是“修剪”(虽然很明显,中间的动作名称不是)。奇怪的事+1@AndreaLigios感谢您的编辑,我想知道为什么我的XML显示时没有语法突出显示:)是的,如果不能通过标记准确推断语言,您需要添加语法突出显示代码(仅仅为了格式化而将问题标记为“XML”是不对的:)也许它与
默认操作ref
或index.action有关
ActionSupport
提供带有默认
SUCCESS
结果的
execute()
方法,并将其用作默认操作。你试过准备一个小的演示应用程序来重现这个问题吗?这个答案应该对你有所帮助。我在Struts 2.3文档中看到了这一段。Struts 2.0.x(我们正在使用的版本)的等效页面上没有它。我猜它的行为完全相同,尽管文档中没有提到。。。我想运行一个小测试来完全确定,但我没有时间这么做(这就是为什么我花了这么长时间才接受答案,很抱歉:)