On Jan 8, 2008, at 7:32 AM, ivanrc wrote: > > ¿witch jar contains ManagedConnectionFactoryWrapper class and > NameFactory > class?.thanks. > ManagedConnectionFactoryWrapper is currently in org.apache.geronimo.components:geronimo-connector:2.0.2:jar and used to be in org.apache.geronimo.modules:geronimo-connector:??:jar. NameFactory is in org.apache.geronimo.modules:geronimo-j2ee:*:jar hope this helps david jencks > > > > Glenn Owen wrote: >> >> >> Hmm, seems like the rollback of the message on the queues was due to >> another problem. So we may not care so much, that Geronimo is >> throwing >> the exception on shutdown. >> >> However, I'm still looking into this problem, because we get a >> similar >> "Got duplicate deregisterConnection for client:" exception when >> shutting >> down Geronimo if an MDB had sent any messages to another MDB. >> >> >> -------- Forwarded Message -------- >> From: Glenn Owen >> To: user@geronimo.apache.org >> Subject: Problem during shutdown when using JMS in a GBean >> Date: Thu, 01 Mar 2007 11:43:38 -0400 >> >> I have a problem trying to utilize a JMS queue from a GBean in >> Geronimo >> 1.1.1. >> >> I believe I have correctly injected the Queue & Factory, as writing >> messages >> to the queue seems to work just fine, the problem occurs when >> Geronimo is >> restarted. >> I get an error on shutdown, that unfortunately has the side effect of >> restoring >> all the messages into the queues, so they get reprocessed on next >> start-up. >> >> Here's the important bits of the code (I've removed the Queue >> injection >> parts to simplify things) >> >> geronimo-application.xml: >> >> >> ProxyConnectionFactory >> >> >> GBean Info: >> >> infoBuilder.addReference("MyQueueFactory", >> ManagedConnectionFactoryWrapper.class, >> NameFactory.JCA_MANAGED_CONNECTION_FACTORY); >> >> infoBuilder.setConstructor(new String[] {"MyQueueFactory"}); >> >> >> GBean Constructor: >> >> public MyProxy (ManagedConnectionFactoryWrapper pFactoryWrapper) { >> >> jmsFactory = (QueueConnectionFactory) >> pFactoryWrapper.getConnectionFactory(); >> >> QueueConnection sendQueueConn = (QueueConnection) >> jmsFactory.createConnection(); >> >> // do regular Queue type stuff ... >> >> sendQueueConn.close(); >> >> >> and during Geronimo shutdown I get..... >> >> 11:06:49,469 WARN [BrokerContainerImpl] Got duplicate >> deregisterConnection for client: ID:laptop-38073-1172761593045-18:0 >> 11:06:49,474 WARN [TransportChannelSupport] Caught exception >> dispatching >> message and no ExceptionListener registered: >> javax.jms.JMSException: Error >> reading socket: java.io.EOFException >> javax.jms.JMSException: Error reading socket: java.io.EOFException >> at >> org.activemq.util.JMSExceptionHelper.newJMSException >> (JMSExceptionHelper.java:49) >> at >> org.activemq.transport.tcp.TcpTransportChannel.doClose >> (TcpTransportChannel.java:509) >> at >> org.activemq.transport.tcp.TcpTransportChannel.run >> (TcpTransportChannel.java:330) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: java.io.EOFException >> at java.io.DataInputStream.readByte(DataInputStream.java:243) >> at >> org.activemq.io.AbstractWireFormat.readPacket >> (AbstractWireFormat.java:230) >> at >> org.activemq.transport.tcp.TcpTransportChannel.run >> (TcpTransportChannel.java:313) >> ... 1 more >> 11:06:49,503 INFO [ActiveMQManagedConnection] Error occured >> during close >> of a JMS connection. >> javax.jms.JMSException: syncSendTimedOut: connection no longer OK >> at >> org.activemq.ActiveMQConnection.syncSendPacket >> (ActiveMQConnection.java:1403) >> at >> org.activemq.ActiveMQConnection.sendConnectionInfoToBroker >> (ActiveMQConnection.java:1628) >> at org.activemq.ActiveMQConnection.close(ActiveMQConnection.java: >> 763) >> at >> org.activemq.ra.ActiveMQManagedConnection.destroy >> (ActiveMQManagedConnection.java:225) >> at >> org.apache.geronimo.connector.outbound.SinglePoolConnectionIntercepto >> r.internalDestroy(SinglePoolConnectionInterceptor.java:121) >> at >> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionIn >> terceptor.destroy(AbstractSinglePoolConnectionInterceptor.java:138) >> at >> org.apache.geronimo.connector.outbound.TransactionEnlistingIntercepto >> r.destroy(TransactionEnlistingInterceptor.java:98) >> at >> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor. >> destroy(TransactionCachingInterceptor.java:113) >> at >> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.de >> stroy(ConnectionHandleInterceptor.java:75) >> at >> org.apache.geronimo.connector.outbound.TCCLInterceptor.destroy >> (TCCLInterceptor.java:57) >> at >> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor. >> destroy(ConnectionTrackingInterceptor.java:86) >> at >> org.apache.geronimo.connector.outbound.AbstractConnectionManager.doSt >> op(AbstractConnectionManager.java:169) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstance.destroyInstance >> (GBeanInstance.java:1143) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStop( >> GBeanInstanceState.java:337) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstanceState.stop >> (GBeanInstanceState.java:188) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstance.stop >> (GBeanInstance.java:548) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.stopGBean >> (BasicKernel.java:423) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstanceState.stop >> (GBeanInstanceState.java:180) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstance.stop >> (GBeanInstance.java:548) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.stopGBean >> (BasicKernel.java:423) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstanceState.stop >> (GBeanInstanceState.java:180) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstance.stop >> (GBeanInstance.java:548) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.stopGBean >> (BasicKernel.java:423) >> at >> org.apache.geronimo.kernel.config.KernelConfigurationManager >> $ShutdownHook.run(KernelConfigurationManager.java:310) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.notifyShutdownHooks >> (BasicKernel.java:668) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.shutdown >> (BasicKernel.java:645) >> at org.apache.geronimo.kernel.KernelGBean.shutdown >> (KernelGBean.java:378) >> at >> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$ >> $1cccefc9.invoke() >> at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53) >> at >> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke >> (FastMethodInvoker.java:38) >> at >> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke >> (GBeanOperation.java:122) >> at >> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke >> (GBeanInstance.java:852) >> at >> org.apache.geronimo.kernel.basic.BasicKernel.invoke >> (BasicKernel.java:239) >> at >> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke >> (MBeanGBeanBridge.java:168) >> at >> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke >> (DynamicMetaDataImpl.java:213) >> at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java: >> 220) >> at >> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke >> (DefaultMBeanServerInterceptor.java:815) >> at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke >> (JmxMBeanServer.java:784) >> at >> javax.management.remote.rmi.RMIConnectionImpl.doOperation >> (RMIConnectionImpl.java:1408) >> at >> javax.management.remote.rmi.RMIConnectionImpl.access$100 >> (RMIConnectionImpl.java:81) >> at >> javax.management.remote.rmi.RMIConnectionImpl >> $PrivilegedOperation.run(RMIConnectionImpl.java:1245) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation >> (RMIConnectionImpl.java:1348) >> at >> javax.management.remote.rmi.RMIConnectionImpl.invoke >> (RMIConnectionImpl.java:782) >> at sun.reflect.GeneratedMethodAccessor190.invoke(Unknown Source) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke >> (DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:585) >> at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java: >> 294) >> at sun.rmi.transport.Transport$1.run(Transport.java:153) >> at java.security.AccessController.doPrivileged(Native Method) >> at sun.rmi.transport.Transport.serviceCall(Transport.java:149) >> at >> sun.rmi.transport.tcp.TCPTransport.handleMessages >> (TCPTransport.java:466) >> at >> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run >> (TCPTransport.java:707) >> at java.lang.Thread.run(Thread.java:595) >> >> >> If don't do the connection close(), I get a different error..... >> >> 11:26:28,171 WARN [BrokerContainerImpl] No clientID available for >> client: >> brokerConnector-client:(10268338) : TcpTransportChannel: >> Socket[addr=/127.0.0.1,port=40729,localport=61616] >> 11:26:28,175 WARN [ActiveMQManagedConnection] Connection failed: >> javax.jms.JMSException: Error reading socket: java.io.EOFException >> 11:26:28,180 WARN [GeronimoConnectionEventListener] >> connectionErrorOccurred called with null >> javax.jms.JMSException: Error reading socket: java.io.EOFException >> at >> org.activemq.util.JMSExceptionHelper.newJMSException >> (JMSExceptionHelper.java:49) >> at >> org.activemq.transport.tcp.TcpTransportChannel.doClose >> (TcpTransportChannel.java:509) >> at >> org.activemq.transport.tcp.TcpTransportChannel.run >> (TcpTransportChannel.java:330) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: java.io.EOFException >> at java.io.DataInputStream.readByte(DataInputStream.java:243) >> at >> org.activemq.io.AbstractWireFormat.readPacket >> (AbstractWireFormat.java:230) >> at >> org.activemq.transport.tcp.TcpTransportChannel.run >> (TcpTransportChannel.java:313) >> ... 1 more >> 11:26:28,185 INFO [ActiveMQManagedConnection] Error occured >> during close >> of a JMS connection. >> javax.jms.JMSException: syncSendTimedOut: connection no longer OK >> at >> org.activemq.ActiveMQConnection.syncSendPacket >> (ActiveMQConnection.java:1403) >> at >> org.activemq.ActiveMQConnection.sendConnectionInfoToBroker >> (ActiveMQConnection.java:1628) >> at org.activemq.ActiveMQConnection.close(ActiveMQConnection.java: >> 763) >> at >> org.activemq.ra.ActiveMQManagedConnection.destroy >> (ActiveMQManagedConnection.java:225) >> at >> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.retur >> nConnection(MCFConnectionInterceptor.java:57) >> at >> org.apache.geronimo.connector.outbound.XAResourceInsertionInterceptor >> .returnConnection(XAResourceInsertionInterceptor.java:47) >> at >> org.apache.geronimo.connector.outbound.SinglePoolConnectionIntercepto >> r.internalReturn(SinglePoolConnectionInterceptor.java:162) >> at >> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionIn >> terceptor.returnConnection >> (AbstractSinglePoolConnectionInterceptor.java:119) >> at >> org.apache.geronimo.connector.outbound.TransactionEnlistingIntercepto >> r.returnConnection(TransactionEnlistingInterceptor.java:94) >> at >> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor. >> returnConnection(TransactionCachingInterceptor.java:93) >> at >> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.re >> turnConnection(ConnectionHandleInterceptor.java:71) >> at >> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnecti >> on(TCCLInterceptor.java:50) >> at >> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor. >> returnConnection(ConnectionTrackingInterceptor.java:82) >> at >> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListene >> r.connectionErrorOccurred(GeronimoConnectionEventListener.java:81) >> at >> org.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent >> (ActiveMQManagedConnection.java:192) >> at >> org.activemq.ra.ActiveMQManagedConnection.onException >> (ActiveMQManagedConnection.java:409) >> at >> org.activemq.transport.TransportChannelSupport.onAsyncException >> (TransportChannelSupport.java:445) >> at >> org.activemq.transport.tcp.TcpTransportChannel.doClose >> (TcpTransportChannel.java:509) >> at >> org.activemq.transport.tcp.TcpTransportChannel.run >> (TcpTransportChannel.java:330) >> at java.lang.Thread.run(Thread.java:595) >> >> >> I must be missing something simple - but what is it? >> >> Note, I do need to admit I'm using Java 1.5 - if there's a chance >> it is >> the cause. >> >> Glenn. >> >> >> > > -- > View this message in context: http://www.nabble.com/Problem-during- > shutdown-when-using-JMS-in-a-GBean-tp9252234s134p14691986.html > Sent from the Apache Geronimo - Users mailing list archive at > Nabble.com. >