java - Struts 2中如何获取action标签的请求属性

标签 java jsp struts2 attributes httprequest

我的操作由 Struts 执行 <s:action>我的 JSP 页面中的标记。

<s:action name="test" ignoreContextParams="false" executeResult="false" namespace="/">
  <h1><s:property value="#attr.testname" /></h1>
</s:action>

test行动,我尝试设置testname属性到一个值,如以下代码。

@Override
public String execute() throws Exception {
    // TODO Auto-generated method stub
    ServletActionContext.getRequest().setAttribute("testname",
            "This is a test name");
    System.out.println("test action executing");
    return ActionSupport.SUCCESS;
}

从输出的信息来看, Action 执行了,但是<h1></h1>是空的。我也尝试过

<h1><s:property value="#request.testname"/></h1>

但是我无法得到我想要的结果,仍然是空的。

如何让这些属性在 <s:action /> 中执行?

最佳答案

property 标记放在action 标记后面。在评估 action 标记的正文之前,上下文变量可能不可用。

<s:action name="test" ignoreContextParams="false" executeResult="false" namespace="/"/>
<h1><s:property value="#attr.testname" /></h1>

关于java - Struts 2中如何获取action标签的请求属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29715924/

相关文章:

java - 使用两行文本的 StringTokenizer 出现问题

jsp - 覆盖 c :url 的基本 url

java - 将值从 applet 传递到 jsp

java - java中的URL加密(Struts2)

java - JPQL 无法处理日期

java - 只构建jar,然后删除所有文件夹

java - jsp safari浏览器windows文件下载内容配置文件名变成-

google-chrome - 仅限 Chrome 问题 : Serving images using a servlet. 一张图像加载,一张图像未加载

java - 如何使用struts2从动态创建的下拉列表中选择值后调用操作

java - 没有引用的新对象的生命周期