Struts2标签获取session对象
我在Jsp中利用Struts2的标签获取session对象并输出来,以下代码是这样的:
<s:iterator value="#session.menusList" var="menus">
<s:property value="#menus.name"/>
</s:iterator>
在Action中的代码是这样的:
public String homes(){
ActionContext.getContext().getSession().put("menusList", loadService.loadFindMenus());
ServletActionContext.getRequest().setAttribute("aboutList", loadService.loadFindAbout());
ServletActionContext.getRequest().setAttribute("proList", loadService.loadFindProduct());
ServletActionContext.getRequest().setAttribute("parList", loadService.loadFindPartners());
ServletActionContext.getRequest().setAttribute("newsList", loadService.loadFindNews());
return SUCCESS;
}
说明:因为加载首页,所以在在多个项的内容显示,所以在些方法中,获取了多个List<?,?>对象,然后将其放置到session中,在由jsp中的Struts2标签获取输出。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(13)
谢谢。
我今天遇到了和楼主同样的问题,调试了一个多小时,确定了后台成功把数据存到session中了,用<s:debug></s:debug>确定了session已经有我存进去的那个对象了,但是就是在页面中不显示,我原来的代码如下:
<s:iterator value="#session.leagueInfo" var="leagueInfo">
<div class="adtitle"><s:property value="#leagueInfo.content"/></div>
</s:iterator>
后来我将"adtitle"改成了"datitle"就成功显示了,因为在firefox和chrome中屏蔽了带有"ad"字眼的一些东西
希望对你有所帮助
http://zhidao.baidu.com/question/472335565.html
List<Menus>对象
回复
那你就应该menus.name如果menus是map的话才[name]
你里面到底是什么对象?
<s:iterator value="menusList" var="menus"> sdfasfs </s:iterator> 上面的“sdfasfs”是可以循环输出的。但是应用: <s:property value="#menus['name']"/> 获取值时就无法得到。
页面获取不到session里的List对象?
<s:iterator value="menusList" var="menus"> sdfasfs </s:iterator> 上面的“sdfasfs”是可以循环输出的。但是应用: <s:property value="#menus['name']"/> 获取值时就无法得到。
回复
有试过换个名字么。不用menus,要不你就在循环中加debug看看menus到底是什么
那你用debug标签看下呢,看看数据到底在不在session中。
<s:debug></s:debug>
不行,那样更无法获得session数据。
<s:iterator value="menusList" var="menus"> sdfasfs </s:iterator> 上面的“sdfasfs”是可以循环输出的。但是应用: <s:property value="#menus['name']"/> 获取值时就无法得到。