action类:
public class myAction extends ActionSupport {
   Users user; 
public Users getUser() {
return user;
         }
public void setUser(Users user) {
this.user = user;
}
。。省略
}
user属性中有一个String的userName属性,我想要把它传给jsp,在struts.xml中用
<result name="enrolled">/index.jsp?t=${user.userName}</result>
在jsp这边用
<s:property value="#parameters.t"/>
为什么接收不到呢?应该如何才能接收到?请教高手!

解决方案 »

  1.   

    我知道用session,但是不知道具体的可以在actionSupport中用的语句。
      

  2.   

    ServletActionContext.getRequest().getSession().setAttribute("SessionKey", "SessionValue");我用这句实现了。
    但是难道只能用session吗?不可以用页面传值的办法来传送对象的属性吗?(如果不是对象的话我会传)
    请教高手!
      

  3.   

    你只要个user对象赋值了
    前台用${user.userName}不就可以取了?
    不用什么session.setAttribute()或者request.setAttribute()
      

  4.   

    struts2 页面属性和action的属性可以自动关联的吧。
    比如:我在后台定义一个对象private User user; 省略get,set方法。
    页面这样设置<input id="userName" name="user.userName" />
    userName是User的一个属性。
    如果不行的话,可以这样试一下:
    HttpServletRequest request = ServletActionContext.getRequest();
    String userName = User.getUserName();
    request.setAttribute("userName", userName);
    前台:var userName= ${request.userName};或者<s:property value='#request.userName' />
    以上仅做参考。
      

  5.   

    直接 <s:property value="user.userName"/>
      

  6.   

    哥们用的是请求转发 直接${user.userName}就行了,当然action中的user是要有值的,