Java/Struts2:如何从当前URL中获取操作名称

4
我有一个活跃的页面,其 URL 如下:http://localhost:8085/projectName/namespace1/namespace2/namespace3/sell.action?id=22 现在我想获取操作名称(第四个名称在标记/之后),即setuppageforwared。
如何实现这一点?请帮助我了解,因为我读了许多关于Struts2的书籍,但都没有找到解决这个问题的方法。
以前我使用 PHP 框架 codeigniter,它可以很容易地使用 URI 段特性(单击此处) 来解决此类问题。我期望在 Struts2 中也能有相同的解决方案。
给定的 URL 字符串: http://localhost:8085/projectName/namespace1/namespace2/namespace3/sell.action?id=22 期望输出: sell
1个回答

10

你有没有查找过 ActionContext#getName()

编辑:
鉴于您表达不够清晰,我猜想您想从操作内部获取正在执行的操作名称。所以,在您的操作execute方法中,您将拥有类似于以下内容的代码:

String actionName = ActionContext.getContext().getName();


如何使用这个,你能详细解释一下吗? - Dan
好的,我明白了。它运行得很好。现在我将为“actionName”变量设置属性,然后通过OGNL从值栈中检索该属性,以便在我的JSP页面中使用...再次感谢。 - Dan
@Sundara 这个链接是关于Oracle数据库企业版下载的,但这与SO无关,而且在谷歌上只需要大约30秒就可以找到。 - Dave Newton
1
请帮我回答这个问题:https://dev59.com/T3nZa4cB1Zd3GeqPqXZg - Dan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接