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

本文介绍了一个在JSP页面使用JSTL标签时出现的常见错误案例,并详细解析了从定位问题到解决问题的过程。作者通过检查代码、验证后端数据传输及前端展示逻辑,最终成功定位并修复了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在jsp中使用jstl标签的时候,页面报该错误,百思不得其解,后来发现是一个地方出现了小问题导致

person.jsp

<body>
	人员列表<br>
	<table>
		<tr>
			<td>序号</td>
			<td>姓名</td>
			<td>年龄</td>
			<td>备注</td>
		</tr>
		<c:forEach items="personList" var="p" varStatus="status">
			<tr>
				<td>${status.index+1}</td>
				<td>${p.name}</td>
				<td>${p.age}</td>
				<td>${p.remark}</td>
			</tr>
		</c:forEach>
	</table>
</body>

PersonController.java

@Controller
@RequestMapping("person")
public class PersonController {

	@Resource
	private PersonService personService;
	
	//查询,将查询结果传递到页面
	@RequestMapping("/list")
	public String list(Model model) {
		List<Person> personList = personService.find(null);
		model.addAttribute("personList",personList);//传递到页面
		return "/person/jPersonList.jsp";
	}
}
最终以为是mapper.xml文件中的参数配置错误,但是检查并未发现错误,最终打印查询的结果,发现正确,那就是在返回到前端页面时候发生了错误.最终锁定错误的位置在这里

person.jsp


这里应该是一个集合,而写成了一个字符串,最终改为如下结果,运行通过:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值