Uploaded image for project: 'Geronimo'
  1. Geronimo
  2. GERONIMO-482

Servlet lifecycle doesn't work well with connection lifecycle

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0-M3
    • 1.0-M4
    • connector
    • None

    Description

      If a servlet opens a connection in init, it might get this exception in destroy when trying to close it.

      java.lang.NullPointerException
      at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleReleased(Connec
      tionTrackingCoordinator.java:131)
      at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d
      33aabf.invoke(<generated>)
      at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:87)
      at org.apache.geronimo.gbean.jmx.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
      at org.apache.geronimo.gbean.jmx.GBeanMBeanOperation.invoke(GBeanMBeanOperation.java:142)
      at org.apache.geronimo.gbean.jmx.GBeanMBean.invoke(GBeanMBean.java:823)
      at org.apache.geronimo.gbean.jmx.RawInvoker.invoke(RawInvoker.java:89)
      at org.apache.geronimo.gbean.jmx.RawOperationInvoker.invoke(RawOperationInvoker.java:34)
      at org.apache.geronimo.gbean.jmx.CGLibMethodInterceptor.intercept(CGLibMethodInterceptor.java:112)
      at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTracker$$EnhancerByCGLIB$$1850a2fe.handle
      Released(<generated>)
      at org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.returnConnection(ConnectionTrackingInter
      ceptor.java:81)
      at org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionClosed(GeronimoConnectionEve
      ntListener.java:68)
      at org.codehaus.activemq.ra.ActiveMQManagedConnection.proxyClosedEvent(ActiveMQManagedConnection.java:454)
      at org.codehaus.activemq.ra.JMSConnectionProxy.close(JMSConnectionProxy.java:67)
      at com.gluecode.samples.jms.servlet.SubscriberServlet.destroy(SubscriberServlet.java:87)
      at org.mortbay.jetty.servlet.ServletHolder.stop(ServletHolder.java:270)
      at org.mortbay.jetty.servlet.ServletHandler.doStop(ServletHandler.java:470)

      Probably the servlet init method isn't properly setting the connection tracking context.

      Attachments

        Activity

          People

            djencks David Jencks
            djencks David Jencks
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: