java – c:forEach返回String而不是Object

weixin_38089340 2019-09-12 12:30:51
我有一个请求范围Struts 1 Action,其中包含我的应用程序中的自定义POJO对象列表.在动作中,我使用request.setAttribute(“myForm”,myForm)来设置表单值.当我到达JSP页面时,我尝试使用c:forEach循环迭代列表中的元素并打印出每个元素的属性.但是,c:forEach循环始终抛出以下错误: javax.servlet.jsp.JspException: An error occurred while evaluating custom action attribute "value" with value "${listObject.name}": Unable to find a value for "name" in object of class "java.lang.String" using operator "." (null) 我的ActionForm有以下实体: private List<MyCustomObjects> myList; public List<MyCustomObjects> getMyList() { return myList; } public void setMyList(List<MyCustomObjects> myList) { this.myList = myList; } 在JSP页面中,我有以下循环: <c:forEach var="listObject" items="myForm.myList"> <c:out value="${listObject.name}" /> </c:forEach> 有谁看到我做错了什么或为什么这不起作用?谢谢!
...全文
84 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38106910 2019-09-12
  • 打赏
  • 举报
回复
您需要将表达式包装在${}中. <c:forEach var="listObject" items="${myForm.myList}"> <c:out value="${listObject.name}" /> </c:forEach> 否则它确实被视为一个String,即具有文字值“myForm.myList”的String.

436

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧