IT人生
专注于java相关技术.
posts - 53,comments - 87,trackbacks - 0
假设在Action类里有这么一个变量

private String str = "Hello jsp and struts2";

还必须有str的get方法。

在JSP页面我们要引入org.apache.struts2.ServletActionContext
<%@page import="org.apache.struts2.ServletActionContext"%>

然后
<%
String str = request.getAttribute("str");
System.out.println(str); //结果将输出: Hello jsp and struts2
%>


减肥瘦身品总汇     值得信赖*脉脉美妆*正品现货谢绝讲价     〓深港商盟〓名品欧衣坊(美国休闲品牌AF系列)     QQ三国游戏币及道具专卖店     小脸红红的瘦身旗舰店
posted on 2009-04-17 11:37 龙华城 阅读(14215) 评论(7)  编辑  收藏

FeedBack:
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-17 13:15 | 铅笔
这个jsp是通过action跳过来的?

还有如果是这样的话那只需要有get方法就可以了。

能不能说的详细点呢楼主?

<%@page import="org.apache.struts2.ServletActionContext"%>

这个导入的具体原理是什么呢?  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-17 14:31 | 龙华城
当Struts2的过滤器启动的时候,首先会初始化

org.apache.struts2.ServletActionContext 类

它掌管着所有的作用域对象,  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-17 16:50 | 重庆理工小子
(1)像一楼说的,楼主,这个jsp应该是通过那个action跳过来的哈。
(2)我也觉得只要一个set就行。
(3)如果是在struts2中,用不着这么麻烦,直接在jsp页面加入
<s:property value="sty"/>就能传值过来了```!  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-17 16:53 | 龙华城
是可以把值传过来,但要想把这个值传给jsp页面
的<%%&>里面的变量呢?
其实我这还出了个问题,就是第一次启动tomcat时 点击那个action。 在jsp里面接收不到action属性那个值,并且action里面的值已经被赋值了。

其实我的目的就是想把action里的属性的值传到jsp页面的java变量里。

~~
  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-19 01:32 | 铅笔
@龙华城
在Struts2 中 ,确实是通过ServletActionContext 来获取request,session的。不过你上面的jsp页面上引入这个类我就不明白是为什么了。因为你的语句也没有用到这个类。

还有就是既然你的程序已经应用了struts2框架,那就应该按照MVC框架来分层设计,又为什么要把属性在JSP里赋给其他变量呢?难道还要进行进一步运算?那这就违背了运用struts的初衷。

还有就是你文章中的方法我运行了,提示出错。jsp页面无法compile。

如果你是想达到这个目的的话,可以直接在action中的 execute方法中把属性setAttribute中啊。  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2009-04-19 01:44 | 铅笔
@龙华城
还有您所说的struts2的Filter会初始化ServletActionContext,这点我有点不明白。 为什么要初始化这个类? 我在org.apache.struts2.dispatcher.FilterDispatcher的源代码中并没有看到相关的信息支持您的这种说话。
  回复  更多评论
  
# re: jsp页面通过 request对象直接获取 struts2 Action的变量的值。
2011-12-15 12:27 | serisboy
@重庆理工小子
这个简单实用!  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: