I have an MDB deployed to JBoss 4.0.0RC1 that consumes messages from a foreign (Tibco 
4.1) JMS provider.

The MDB is deployed with a client id specified in the jboss.xml deployment descriptor.

I invoke stopDelivery() and then startDelivery() on the mbean for this MDB.

When I invoke startDelivery() on the mbean I get an exception in the JBoss server.  
Here's log output at the DEBUG level showing the stopDelivery() followed by the 
startDelivery():

09:31:55,890 DEBUG [SnmpAgentService] It's for me: 
javax.management.MBeanServerNotification: notificationType=JMX.mbean.registered 
source=JMImplementation:type=MBeanServerDelegate seq-no=490 time=1095687115890 
message=null 
objectName=jboss.web:name=HttpRequest1,type=RequestProcessor,worker=http-0.0.0.0-8080 
userData=null, handback:2147483647
09:32:03,273 DEBUG [SnmpAgentService] It's for me: 
javax.management.MBeanServerNotification: notificationType=JMX.mbean.registered 
source=JMImplementation:type=MBeanServerDelegate seq-no=491 time=1095687123273 
message=null 
objectName=jboss.web:name=HttpRequest2,type=RequestProcessor,worker=http-0.0.0.0-8080 
userData=null, handback:2147483647
09:32:03,355 DEBUG [JMSContainerInvoker] Stop requested
09:32:03,356 DEBUG [JMSContainerInvoker] unset exception listener
09:32:03,358 DEBUG [JMSContainerInvoker] connection stopped
09:32:03,358 DEBUG [DLQHandler] Stopping DLQHandler
09:32:03,359 DEBUG [DLQHandler] Stopped DLQHandler
09:32:36,042 DEBUG [JMSContainerInvoker] Initializing
09:32:36,090 DEBUG [JMSContainerInvoker] Looking up provider adapter: 
java:/TIBCOJMSProvider
09:32:36,091 DEBUG [JMSContainerInvoker] Provider adapter: [EMAIL PROTECTED]
09:32:36,092 DEBUG [DLQHandler] Creating DLQHandler
09:32:36,128 DEBUG [DLQHandler] Using factory: 
XAQueueConnectionFactory[URL=tcp://class42:10103;clientID=null]
09:32:36,138 DEBUG [DLQHandler] Created connection: QueueConnection[ClientId=null 
Connected=tcp://class42:10103, URL=tcp://class42:10103]
09:32:36,259 DEBUG [DLQHandler] Using Queue: Queue[queue/DLQ]
09:32:36,260 DEBUG [DLQHandler] Created DLQHandler
09:32:36,260 DEBUG [JMSContainerInvoker] context: [EMAIL PROTECTED]
09:32:36,260 DEBUG [JMSContainerInvoker] jndiSuffix: B
09:32:36,260 DEBUG [JMSContainerInvoker] Got destination type Queue for jbossTestMDB
09:32:36,336 DEBUG [ConnectionFactoryHelper] using connection factory: 
XAQueueConnectionFactory[URL=tcp://class42:10103;clientID=null]
09:32:36,336 DEBUG [ConnectionFactoryHelper] using username/password: bcohen/
09:32:36,355 DEBUG [ConnectionFactoryHelper] created XAQueueConnection: 
XAQueueConnection[ClientId=null Connected=tcp://class42:10103, URL=tcp://class42:10103]
09:32:36,356 DEBUG [JMSContainerInvoker] Using client id: mdb
09:32:36,454 WARN  [JMSContainerInvoker] JMS provider failure detected: 
javax.jms.InvalidClientIDException: clientID already exists
        at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:494)
        at com.tibco.tibjms.TibjmsConnection.setClientID(TibjmsConnection.java:1911)
        at 
org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:706)
        at 
org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:767)
        at 
org.jboss.ejb.plugins.jms.JMSContainerInvoker.startDelivery(JMSContainerInvoker.java:297)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
        at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:230)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:229)
        at org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:195)
        at 
org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:241)
        at 
org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:79)
        at 
org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:61)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        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.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:146)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at 
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:122)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
        at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:552


It appears that when I invoke stopDelivery() that JBoss stops (but not closes) the 
connection associated with this MDB.  The Tibco administrative application confirms 
this.

When I invoke startDelivery() JBoss establishes a new connection and with the client 
id that I specified in my jboss.xml deployment descriptor.  Since the original 
connection established with my client id still exists I get the exception.

If I deploy the MDB without the client id in the jboss.xml file I don't get an 
exception. However, after every stopDelivery() startDelivery() sequence the Tibco 
administrative application shows that JBoss has an additional connection.

Is this the behavior I should be seeing?

Thanks in advance,
  Bruce

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3848787#3848787

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3848787


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to