本文介绍了服务器遇到意外情况,阻止其满足请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试显示数据库中的数据.但是显示错误为
I am trying to display Data from DB.But Shows error as
例外
org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/pages/Detail.jsp at line 14
11: </head>
12: <body>
13:
14: <c:forEach var="x" items="${prdt}">
15: <table>
16: <img src="resources/Images/${x.id}.png"/>
17: <td>"
我的JSP
<c:forEach var="x" items="${prdt}">
<table>
<img src="resources/Images/${x.id}.png"/>
<td>
<c:out value="${x.product_Name}"/></td>
<td>
<c:out value="${x.descripction}"/></td>
<td>
<c:out value="${x.price}"/></td>
<td>
<c:out value="${x.mfg_Date}"/>
</td>
</table>
</c:forEach>
我的控制器
public ModelAndView productDtails(@PathVariable int id)
{
ModelAndView model=new ModelAndView("Detail");
model.addObject("prdt",pd.getById(id));
return model;
}
我的DAO IMpl
public Product getById(int id)
{
Session session=sessionFactory.openSession();
Product p=(Product) session.get(Product.class, id);
session.close();
return p;
}
有任何想法吗??
推荐答案
您无法遍历prdt
对象,即,您正在使用forEach
标记,而prdt
不是List
对象,因此要解决此问题,只需删除<c:forEach var="x" items="${prdt}">
,否则您需要从Contoller返回一个list
对象.
You can't iterate over prdt
object i.e., you are using forEach
tag and prdt
is not a List
object, so to solve the issue simply remove <c:forEach var="x" items="${prdt}">
or else you need to return a list
object from your Contoller.
您的JSP如下所示(删除<c:forEach
后):
Your JSP looks as below (after removing <c:forEach
):
<table>
<img src="resources/Images/${x.id}.png"/>
<td>
<c:out value="${prdt.product_Name}"/></td>
<td>
<c:out value="${prdt.descripction}"/></td>
<td>
<c:out value="${prdt.price}"/></td>
<td>
<c:out value="${prdt.mfg_Date}"/>
</td>
</table>
这篇关于服务器遇到意外情况,阻止其满足请求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!