点击一个菜单,触发action中的find()方法,然后把值赋给action中的String a;String b;  通过struts2 跳转到一个jsp页面,在jsp页面中无法得到action中的a,b的值。
若在action中使用ServletActionContext.getRequest().setAttribute是可以的。环境是:tomcat6+myeclise6.5+jdk1.6 +json+struts2

解决方案 »

  1.   

    在action中增加a和b的get和set方法即可
      

  2.   

    有set和get了,在find()中,得到值后,seta ,setb也不行。 我在jsp中使用json的${a} ${b}这样取值的,刷新页面后得到的值是空,不刷新页面,再次点击后就有值了。很愚昧!
      

  3.   

    没道理,应该会有值的。
    这里跟json好像没什么关系
      

  4.   

    再次点击后就有值了。很愚昧!这个你调试一下程序,看你第一次点击那个菜单的时候有木有进入那个action
    按道理用el表达式是可以取到的
      

  5.   

    比如  左侧是菜单,右侧是页面,使用frame分的。
    我刷新整个页面后,点击左侧菜单,通过断点到了action,且得到正确的值(比如是一个list<user> u)!action中return succss 到了右侧的b.jsp页面, 在b.jsp页面中<s:iterator id="u" value="a">
     <s:property value='#u.getName()'/>
     <s:property value='#u.getAge()'/>
    </s:iterator>但值是空的。