1

当我们通过休眠获得连接时,我们在使用多个连接时出现错误连接代理错误

错误消息类似于以下语句

SEVERE: Servlet.service() for servlet action threw exception org.hibernate.HibernateException: connnection proxy not usable after transaction completion at org.hibernate.jdbc.BorrowedConnectionProxy.invoke(BorrowedConnectionProxy.java:66) at $Proxy0.prepareStatement(Unknown Source) at com.indiamoney.api.advisor.dashboard.dao.impl.AdvisorDashboardDAOImpl.getCustemerRequestsCount(AdvisorDashboardDAOImpl.java:571) at com.indiamoney.api.advisor.dashboard.bo.AdvisorDashboardBO.getCustemerRequestsCount(AdvisorDashboardBO.java:226) at com.indiamoney.advisor.dashboard.action.AdvisorDashboardAction.dashboardDetails(AdvisorDashboardAction.java:307) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269) at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Unknown Source) Nov 1, 2012 9:18:37 PM org.apache.tomcat.util.http.Parameters processParameters WARNING: Parameters: Invalid chunk ignored. Nov 1, 2012 9:18:37 PM org.apache.tomcat.util.http.Parameters processParameters WARNING: Parameters: Invalid chunk ignored.
4

2 回答 2

2

在使用 hibernate 3.2.7/Spring 3.0.5 和 ope-session-in-view 过滤器的更棘手的用例中,我遇到了异常。大概是因为分离的实体作为参数传递给新线程并在单独的事务中更新。

于 2013-01-22T12:15:33.893 回答
0

我们的系统几天前遇​​到了这个异常。我跟踪了 BorrowedConnectionProxy.java 发现这个问题是由于在休眠使用它之前关闭连接引起的:

我们使用 Session.connection() 来获取会话中寄生的连接并手动关闭它。在这种情况下,当调用 Session 上的任何与 db 相关的方法时,将抛出异常。

因此,请检查并确保休眠/会话获取有效连接(处于正确状态)。希望这对您的情况有效。

于 2012-11-19T02:21:38.363 回答