前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >javax.el.PropertyNotFoundException: Property 'XXX' not found on type xx.xx.xx.xx(实体类具体路径)

javax.el.PropertyNotFoundException: Property 'XXX' not found on type xx.xx.xx.xx(实体类具体路径)

作者头像
时间静止不是简史
发布2020-07-27 10:12:44
2.8K0
发布2020-07-27 10:12:44
举报
文章被收录于专栏:Java探索之路Java探索之路

原因:在使用el表达式获取具体属性时,只能用小写调用(即使实体类定义的属性有大写字母)

列如: 实体类属性如下,可以看到属性有大写字母

在这里插入图片描述
在这里插入图片描述

而且servlet返回的是一个集合plist

在这里插入图片描述
在这里插入图片描述

在jsp页面使用jstl以及el调用时

在这里插入图片描述
在这里插入图片描述

控制台报如标题所示异常

在这里插入图片描述
在这里插入图片描述

解决方案:将需要调用的属性全部小写即可

在这里插入图片描述
在这里插入图片描述

注意:如果你设置了request.setAttribute(),如request.setAttribute(“empId”, empId);则使用el获取时,应写成 ${empId}。

也就是说,如果没有设置具体的属性,使用el获取时,通通用小写。反之,则需要按照request.setAttribute()第一个引号内设置的值原样获取。

还有一个原因,就是取值时el表达式没写错,在写jstl表达式时,item没写对

代码语言:javascript
复制
<c:forEach items="列名" var="列名简写">
		<option value="${mrg.emId }">${mgr.realName}</option>
</c:forEach>

应改为:

代码语言:javascript
复制
<c:forEach items="${列名}" var="mgr">
	    <option value="${mrg.emId }">${mgr.realName}</option>
</c:forEach>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原因:在使用el表达式获取具体属性时,只能用小写调用(即使实体类定义的属性有大写字母)
  • 注意:如果你设置了request.setAttribute(),如request.setAttribute(“empId”, empId);则使用el获取时,应写成 ${empId}。
  • 也就是说,如果没有设置具体的属性,使用el获取时,通通用小写。反之,则需要按照request.setAttribute()第一个引号内设置的值原样获取。
  • 还有一个原因,就是取值时el表达式没写错,在写jstl表达式时,item没写对
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档