在Struts 2中,action的name属性可以是路径吗?我的意思是它可以是以下内容:
<action name="/api/method/call" ...>
是否有任何来源解释了Struts配置中的操作标记可以具有哪些属性。 Struts似乎真的没有文档。
答案 0 :(得分:2)
您可以在此部分Action Names查看文档。然而,由于领先的斜线,它与你的不一样。
动作名称带斜杠
如果您的动作名称中包含斜杠(例如,
<action name="admin/home" class="tutorial.Admin"/>
)你需要具体 通过struts.xml
中的常量允许动作名称中的斜杠 文件通过指定
<constant name = "struts.enable.SlashesInActionNames" value = "true"/>
。请参阅JIRA问题WW-1383进行讨论 将此属性设置为true
的副作用。
您可以删除前导斜杠并查看它是否有效或使用Action Annotation的常规插件。
动作注释
Convention插件允许操作类更改URL 它们映射到使用
@Action
注释。这个注释可以 也可以在@Actions
注释中使用以允许多个URL 映射到单个动作类。必须定义此注释 像这样的行动方法:public class HelloWorld extends ActionSupport { @Action("/different/url") public String execute() { return SUCCESS; } }
我们的操作类现在将映射到URL
/different/url
而不是/hello-world
。如果没有指定@Result
(参见下一节),那么 动作的命名空间将用作结果的路径 我们的最后一个例子是/WEB-INF/content/different/url.jsp
。
答案 1 :(得分:0)
docs链接供您参考。
cordova plugin add com.lampa.startapp
您可以在动作名称中使用斜杠,但不建议, https://stackoverflow.com/a/19114364/5086633