list里面放的实体对象,页面用c:foreach应该怎么取?

关于网友提出的“ list里面放的实体对象,页面用c:foreach应该怎么取?”问题疑问,本网通过在网上对“ list里面放的实体对象,页面用c:foreach应该怎么取?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:





问题: list里面放的实体对象,页面用c:foreach应该怎么取?

描述:

User user=null;

String hql="select uid,nickName from User";

List<Object[]> receiverList=emailService.getListByHql(hql);

List<User> tempList=new ArrayList<User>();

for(Object[] objs:receiverList)

{

user=new User();

user.setUid((Integer)objs[0]);

user.setNickName((String)objs[1]);

tempList.add(user);

}

System.out.println(tempList.size());

System.out.println(tempList.get(0).getUid());

System.out.println(tempList.get(0).getNickName());

Map request=(Map)ActionContext.getContext().get("session");

request.put("receiverList", tempList);

return SUCCESS;


<select name="receiver">

<c:forEach var="receiver" items="${receiverList }" varStatus="vs">

<option value="${receiver.uid }">${receiver.nickName }</option>

</c:forEach>

</select>

我在页面上这样写根本取不到,报

javax.el.PropertyNotFoundException: Property 'uid' not found on type java.lang.String

异常


解决方案1:

这要检查你的 User 实体类,User 是否有uid属性,并且是否有get set方法!

解决方案2:

区分大小写某

解决方案3:

<c:forEach var="receiver" items="${page.receiverList }" varStatus="vs">

解决方案4:

页面用${sessionScope.receiverList }取值

解决方案5:

ActionContext.getContext().getSession().put("receiverList", tempList)

用这种放放到session中    

再不行的话,你换成structs的迭代标签



以上介绍了“ list里面放的实体对象,页面用c:foreach应该怎么取?”的问题解答,希望对有需要的网友有所帮助。

本文网址链接:http://www.codes51.com/itwd/2865162.html


posted @ 2019-02-27 12:00  星朝  阅读(1393)  评论(0)    收藏  举报