由于hibernate懒加载引起的异常

在刷新网页的时候,使用el表达式,${list[0].category.ctype}获取类别名,结果网页报错

org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 24

21: 			<c:forEach items="${applicationScope.homeGoods}" var="list">
22: 			<tr>
23: 				<td colspan="4">
24: 					${list[0].category.ctype}
25: 				</td>
26: 			</tr>
27: 			<tr>


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



root cause 
javax.el.ELException: Error reading 'ctype' on type cn.hugo.shop.pojo.Category_$$_javassist_0
	javax.el.BeanELResolver.getValue(BeanELResolver.java:98)
	org.apache.jasper.el.JasperELResolver.getValue(JasperELResolver.java:104)
	org.apache.el.parser.AstValue.getValue(AstValue.java:183)
	org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185)
	org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:1026)
	org.apache.jsp.index_jsp._jspx_meth_c_005fforEach_005f0(index_jsp.java:134)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:94)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)



root cause 
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
	org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:167)
	org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:215)
	org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190)

错误原因:

1、el表达式(看起来好像是滴)

2、(直接原因) 在加载pojo的类catagory时,关闭了session导致不能加载该类


由于hibernate懒加载引起了该问题,需要修改hibernate的配置文件,把数据库访问设置为 lazy="false"

你可能感兴趣的:(由于hibernate懒加载引起的异常)