求救JSF和JSTL forEach标签问题!!!!
我先简单描述下问题.我下了一个backbean.并在faces-config.xml中配置好了.在JSF页面取得该bean中的list的时候为什么会创建多个list对象...
代码如下:
UserVO.java
public class UserVO {
private int id;
private String typename;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTypename() {
return typename;
}
public void setTypename(String typename) {
this.typename = typename;
}
}
TestBackBean.java
public class TestBackBean{
private List movDic;
public List getMovDic() {
System.out.println("eee");
List test = new ArrayList();
UserVO mv1 = new UserVO();
mv1.setId(1);
mv1.setTypename("wori");
test.add(mv1);
return test;
}
}
faces-config.xml
.....
<managed-bean>
<managed-bean-name>dic</managed-bean-name>
<managed-bean-class>
com.test.TestBackBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
......
test.jsf
.....
<table>
<c:forEach items="#{dic.movDic}" var="item">
<tr>
<td>
#{item.typeno}
</td>
<td>
#{item.typename}
</td>
</tr>
</c:forEach>
</table>
....
问题出现了!!!! 系统打印出来的信息"eee" 出现了多次!!!也就是说调用get方法调用了多次.我想不明白是怎么回事.
按道理只应该返回唯一的一个list啊.望高手指点,谢谢了...