| Hi all,
I am using hibernate to connect to a mySql database. When I first bounce the tomcat service the site works fine. But over a period of time I begin to get random null pointer errors. What I mean be random nll pointer errors is that I will navigate to a page a get the null pointer error, but if I hit the refresh button on the page it comes up ok. This can occur on any page and the refresh buttom always works.
 
 The error in my catalina.out file is
 [ERROR] JDBCExceptionReporter - No operations allowed after connection closed.
 
 Connection was closed due to the following exception:
 
 ** BEGIN NESTED EXCEPTION **
 
 java.sql.SQLException
 MESSAGE: Communication link failure: java.net.SocketException, underlying cause: Connection reset
 
 I thought it was a connection polling issue, but after configuring the hibernate.cfg.xml file to not use the native hibernate connection pool, I am still seeing the issue.
 
 Any help would be greatly appericated.
 
 Ron
 
 Hibernate version: 3.0
 
 Mapping documents:
 <?xml version='1.0' encoding='UTF-8'?>
 <!DOCTYPE hibernate-configuration PUBLIC
 "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
 "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
 
 <!-- Generated by MyEclipse Hibernate Tools.                   -->
 <hibernate-configuration>
 
 <session-factory>
 <property name="connection.datasource">java:comp/env/jdbc/mySqlDs</property>
 <property name="show_sql">false</property>
 <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
 <property name="connection.release_mode">on_close</property>
 
 <property name="dbcp.maxActive">100</property>
 <property name="dbcp.whenExhaustedAction">1</property>
 <property name="dbcp.maxWait">120000</property>
 <property name="dbcp.maxIdle">1</property>
 <property name="dbcp.minIdle">0</property>
 <property name="dbcp.ps.maxActive">10</property>
 <property name="dbcp.ps.whenExhaustedAction">1</property>
 <property name="dbcp.ps.maxWait">120000</property>
 <property name="dbcp.ps.maxIdle">100</property>
 <property name="dbcp.validationQuery">select 1 from dual</property>
 <property name="dbcp.testOnBorrow">true</property>
 <property name="dbcp.testOnReturn">false</property>
 <property name="dbcp.validationQuery">select 1 from dual</property>
 <property name="dbcp.testOnBorrow">true</property>
 <property name="dbcp.testOnReturn">false</property>
 
 <mapping resource="hibernate.cfg.xml" />
 ....
 Code between sessionFactory.openSession() and session.close():
 
 Session session = HibernateSessionFactory.currentSession();
 
 Transaction tx = session.beginTransaction();
 //Integer count = (Integer) session.createQuery("select count(*) from ....").uniqueResult();
 List listOfCoordinators =  session.createQuery("select emailAddress from Emailxuser where userId != " + userId_IN).list();
 
 tx.commit();
 
 HibernateSessionFactory.closeSession()
 
 Full stack trace of any exception that occurs:
 
 [ERROR] JDBCExceptionReporter - No operations allowed after connection closed.
 
 Connection was closed due to the following exception:
 
 ** BEGIN NESTED EXCEPTION **
 
 java.sql.SQLException
 MESSAGE: Communication link failure: java.net.SocketException, underlying cause: Connection reset
 
 ** BEGIN NESTED EXCEPTION **
 
 java.net.SocketException
 MESSAGE: Connection reset
 
 STACKTRACE:
 
 java.net.SocketException: Connection reset
 at java.net.SocketInputStream.read(SocketInputStream.java:168)
 at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
 at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
 at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
 at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1316)
 at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:1463)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1854)
 at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109)
 at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203)
 at com.mysql.jdbc.Connection.execSQL(Connection.java:2090)
 at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496)
 at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
 at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120)
 at org.hibernate.loader.Loader.getResultSet(Loader.java:1272)
 at org.hibernate.loader.Loader.doQuery(Loader.java:391)
 at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
 at org.hibernate.loader.Loader.doList(Loader.java:1593)
 at org.hibernate.loader.Loader.list(Loader.java:1577)
 at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
 at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
 at org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
 at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
 at com.twoUnify.hibernate.Pendinginvites.getUserInvitesList(Pendinginvites.java:234)
 at com.twoUnify.struts.action.AdminAction.invitesAdminPage(AdminAction.java:406)
 at sun.reflect.GeneratedMethodAccessor322.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
 at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
 at org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
 at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at com.twoUnify.struts.filter.MyRequestFilter.doFilter(MyRequestFilter.java:58)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
 at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
 at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
 at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:383)
 at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
 at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
 at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Thread.java:595)
 
 
 ** END NESTED EXCEPTION **
 
 
 
 STACKTRACE:
 
 java.sql.SQLException: Communication link failure: java.net.SocketException, underlying cause: Connection reset
 
 ** BEGIN NESTED EXCEPTION **
 
 java.net.SocketException
 MESSAGE: Connection reset
 STACKTRACE:
 
 java.net.SocketException: Connection reset
 at java.net.SocketInputStream.read(SocketInputStream.java:168)
 at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
 at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
 at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
 at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1316)
 at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:1463)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1854)
 at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109)
 at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203)
 at com.mysql.jdbc.Connection.execSQL(Connection.java:2090)
 at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496)
 at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
 at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120)
 at org.hibernate.loader.Loader.getResultSet(Loader.java:1272)
 at org.hibernate.loader.Loader.doQuery(Loader.java:391)
 at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
 at org.hibernate.loader.Loader.doList(Loader.java:1593)
 at org.hibernate.loader.Loader.list(Loader.java:1577)
 at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
 at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
 at org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
 at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
 at com.twoUnify.hibernate.Pendinginvites.getUserInvitesList(Pendinginvites.java:234)
 at com.twoUnify.struts.action.AdminAction.invitesAdminPage(AdminAction.java:406)
 at sun.reflect.GeneratedMethodAccessor322.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
 at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
 at org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
 at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at com.twoUnify.struts.filter.MyRequestFilter.doFilter(MyRequestFilter.java:58)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
 at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
 at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
 at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:383)
 at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
 at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
 at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Thread.java:595)
 
 
 ** END NESTED EXCEPTION **
 
 
 at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:1638)
 at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1854)
 at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109)
 at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203)
 at com.mysql.jdbc.Connection.execSQL(Connection.java:2090)
 at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496)
 at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
 at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120)
 at org.hibernate.loader.Loader.getResultSet(Loader.java:1272)
 at org.hibernate.loader.Loader.doQuery(Loader.java:391)
 at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
 at org.hibernate.loader.Loader.doList(Loader.java:1593)
 at org.hibernate.loader.Loader.list(Loader.java:1577)
 at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
 at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
 at org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
 at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
 at com.twoUnify.hibernate.Pendinginvites.getUserInvitesList(Pendinginvites.java:234)
 at com.twoUnify.struts.action.AdminAction.invitesAdminPage(AdminAction.java:406)
 at sun.reflect.GeneratedMethodAccessor322.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
 at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
 at org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
 at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at com.twoUnify.struts.filter.MyRequestFilter.doFilter(MyRequestFilter.java:58)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
 at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
 at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
 at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:383)
 at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
 at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
 at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
 at java.lang.Thread.run(Thread.java:595)
 
 
 ** END NESTED EXCEPTION **
 
 
 [ERROR] StandardWrapper[:jsp] - Servlet.service() for servlet jsp threw exception <java.lang.NullPointerException>java.lang.NullPointerException
 
 Name and version of the database you are using:
 mySql
 The generated SQL (show_sql=true):
 
 Debug level Hibernate log excerpt:
 
 [/code]
 
 
 |