struts2 循环装了news实体类的list,页面可以循环出实体对象的内存地址,但是无法循环出该对象的属性的值?



struts2 循环装了news实体类的list,页面可以循环出实体对象的内存地址,但是无法循环出该对象的属性的值?

后台
public String doShowNews() {
List list = iNewBiz.getList();
if (list.size() > 0) {
ActionContext.getContext().put(“news”, list);
super.map.put(“news”, list);
return “index”;
}
return null;
}

页面

<body>
<s:property value=”#attr.news” />循环出内存地址
<s:iterator value=”#attr.news” status=”n” id=”n”>什么也循环不出来
<s:property value=”#n.news.title” />
<br />
<s:property value=”#n.news.newsId” />
</s:iterator>
</body>
这是怎么回事呀
该怎么改呀
分享到:
2011-04-22 14:43 提问者采纳
页面改为:
<body>
<s:iterator value=”#attr.news” status=”n” id=”n”>
<s:property value=”title” /> <br />
<s:property value=”newsId” /> <br />
******************
</s:iterator>
</body>
追问
能给我讲讲为什么直接写属性名就可以了吗
而不是对象名.属性呢?
难道webwork里面就是这样的写的吗
提问者评价
谢谢

在struts2中的action里创建一个实体类的对象,然后写上set()和get()方法,这样在jsp中传过来的参数要写用 实体名.属性名 在action里struts2会帮你把页面传过来的值放到你在action里创建的那个实体类的对象里。
例如你在一个action里要传一个user对象:
private User user ;
public User getUser() {
  return user;
 }
public void setUser(User user) {
  this.user = user;
 }
在页面传值的时候要这样传:
<form name="myform" action="<%=basePath %>login/login1"method="post">
   用户名:<input type="text" name="user.uname"/><br>
   密码:<input type="text" name="user.upass"/><br>
   <input type="submit" value="登陆"/>
</form>
这样在action里就会接收到页面传来的值并放到那个实体类里

http://zhidao.baidu.com/question/256196254.html