0 Replies Latest reply on Nov 3, 2004 10:14 AM by squeak

    Error undeploying MDB's and Queues on 4.0

    squeak

      I have an EAR file that contains my queue definitions, and well as my MDB definitions.

      When I undeploy my EAR file inside the 'standard' config for JBoss 4.0, I get a litnany of errors. I did not see this issue on 3.2.3

      Here is the stacktrace

      10:04:53,863 INFO [org.jboss.web.tomcat.tc5.TomcatDeployer:391] undeploy, ctxPath=/jcore,
      warUrl=file:/C:/jboss-4.0.0/server/default/tmp/deploy/tmp56118OSNCore.ear-contents/jcore-exp.war/
      10:04:53,883 INFO [org.jboss.ejb.EJBDeployer:626] Undeploying: file:/C:/jboss-4.0.0/server/default/tmp/deploy/tmp56118OSNCore.ear-contents/OSNBeans.jar
      10:04:53,984 WARN [org.jboss.mq.server.BasicQueue:653] Error during stop - removing subscriber
      Subscription[subId=-2147483648connection=ConnectionToken:ID:3/84a5f3763bfc14670fcfa8652498c954
      destination=QUEUE.BulkEmailMDBQueue messageSelector=null Local Create]
      javax.jms.InvalidDestinationException: The subscription was registered with a destination that does not exist !
       at org.jboss.mq.server.ClientConsumer.removeSubscription(ClientConsumer.java:246)
       at org.jboss.mq.server.BasicQueue.stop(BasicQueue.java:649)
       at org.jboss.mq.server.JMSQueue.close(JMSQueue.java:152)
       at org.jboss.mq.server.JMSDestinationManager.closeDestination(JMSDestinationManager.java:806)
       at org.jboss.mq.server.jmx.DestinationMBeanSupport.stopService(DestinationMBeanSupport.java:138)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalStop(ServiceMBeanSupport.java:319)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:223)
       at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
       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:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
       at $Proxy0.stop(Unknown Source)
       at org.jboss.system.ServiceController.stop(ServiceController.java:498)
       at sun.reflect.GeneratedMethodAccessor74.invoke(Unknown Source)
       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:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
       at $Proxy4.stop(Unknown Source)
       at org.jboss.deployment.SARDeployer.stop(SARDeployer.java:295)
       at org.jboss.deployment.MainDeployer.stop(MainDeployer.java:593)
       at org.jboss.deployment.MainDeployer.stop(MainDeployer.java:608)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:576)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:571)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:544)
       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.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
       at $Proxy8.undeploy(Unknown Source)
       at org.jboss.deployment.scanner.URLDeploymentScanner.undeploy(URLDeploymentScanner.java:335)
       at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:423)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:204)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:215)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:194)
      10:04:53,984 WARN [org.jboss.mq.server.BasicQueue:653] Error during stop - removing subscriber
      Subscription[subId=-2147483648connection=ConnectionToken:ID:1/36be1dd15629d23319402b72321c07e4
      destination=QUEUE.EmailMDBQueue messageSelector=null Local Create]
      javax.jms.InvalidDestinationException: The subscription was registered with a destination that does not exist !
       at org.jboss.mq.server.ClientConsumer.removeSubscription(ClientConsumer.java:246)
       at org.jboss.mq.server.BasicQueue.stop(BasicQueue.java:649)
       at org.jboss.mq.server.JMSQueue.close(JMSQueue.java:152)
       at org.jboss.mq.server.JMSDestinationManager.closeDestination(JMSDestinationManager.java:806)
       at org.jboss.mq.server.jmx.DestinationMBeanSupport.stopService(DestinationMBeanSupport.java:138)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalStop(ServiceMBeanSupport.java:319)
       at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:223)
       at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
       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:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
       at $Proxy0.stop(Unknown Source)
       at org.jboss.system.ServiceController.stop(ServiceController.java:498)
       at sun.reflect.GeneratedMethodAccessor74.invoke(Unknown Source)
       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:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
       at $Proxy4.stop(Unknown Source)
       at org.jboss.deployment.SARDeployer.stop(SARDeployer.java:295)
       at org.jboss.deployment.MainDeployer.stop(MainDeployer.java:593)
       at org.jboss.deployment.MainDeployer.stop(MainDeployer.java:608)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:576)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:571)
       at org.jboss.deployment.MainDeployer.undeploy(MainDeployer.java:544)
       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.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
       at $Proxy8.undeploy(Unknown Source)
       at org.jboss.deployment.scanner.URLDeploymentScanner.undeploy(URLDeploymentScanner.java:335)
       at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:423)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:204)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:215)
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:194)
      10:04:53,984 INFO [org.jboss.deployment.EARDeployer:327] Undeploying J2EE application, destroy step: file:/C:/jboss-4.0.0/server/default/deploy/OSNCore.ear
      10:04:55,175 WARN [org.jboss.mq.server.ClientConsumer:191] The subscription was registered with a destination that does not exist:
      Subscription[subId=-2147483648connection=ConnectionToken:ID:3/84a5f3
      763bfc14670fcfa8652498c954 destination=QUEUE.BulkEmailMDBQueue messageSelector=null Local Create]
      10:04:55,195 INFO [org.jboss.ejb.EjbModule:478] Undeployed BulkEmailListener
      10:04:55,195 WARN [org.jboss.mq.server.ClientConsumer:191] The subscription was registered with a destination that does not exist:
      Subscription[subId=-2147483648connection=ConnectionToken:ID:1/36be1d
      d15629d23319402b72321c07e4 destination=QUEUE.EmailMDBQueue messageSelector=null Local Create]
      10:04:55,205 INFO [org.jboss.ejb.EjbModule:478] Undeployed EmailListener
      10:04:55,205 INFO [org.jboss.ejb.EjbModule:478] Undeployed ConsultationTrackingService
      10:04:55,205 INFO [org.jboss.ejb.EjbModule:478] Undeployed HallPassService
      10:04:55,205 INFO [org.jboss.ejb.EjbModule:478] Undeployed NodeModelService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed DocumentLibraryService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed EmailService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed StoreService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed OppTrackingService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed PersistenceService
      10:04:55,215 INFO [org.jboss.ejb.EjbModule:478] Undeployed CatalogService
      10:04:55,225 INFO [org.jboss.ejb.EjbModule:478] Undeployed OrganizationProfileService
      10:04:55,225 INFO [org.jboss.ejb.EjbModule:478] Undeployed TextletService
      10:04:55,235 WARN [org.jboss.deployment.DeploymentInfo:374] Could not delete file:/C:/jboss-4.0.0/server/default/tmp/deploy/tmp56118OSNCore.ear restart will delete it
      


      As you can see, I have two queues, and both with an MDB attached to it. It looks like when the queue is being stopped, it is not able to remove the MDB as a subscriber. Any thoughts?

      For completeness, here is my descriptors for the queues, and the MDB:

       <mbean code="org.jboss.mq.server.jmx.Queue"
       name="jboss.mq.destination:service=Queue,name=EmailMDBQueue">
       <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
       </mbean>
       <mbean code="org.jboss.mq.server.jmx.Queue"
       name="jboss.mq.destination:service=Queue,name=BulkEmailMDBQueue">
       <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
       </mbean>
      



      ejb-jar.xml
       <message-driven >
       <description>[CDATA[]]</description>
      
       <ejb-name>EmailListener</ejb-name>
      
       <ejb-class>org.osn.ejb.EmailListenerMDB</ejb-class>
      
       <transaction-type>Container</transaction-type>
       <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
       <message-driven-destination>
       <destination-type>javax.jms.Queue</destination-type>
       <subscription-durability>Durable</subscription-durability>
       </message-driven-destination>
      
       </message-driven>
      
       <message-driven >
       <description>[CDATA[]]</description>
      
       <ejb-name>BulkEmailListener</ejb-name>
      
       <ejb-class>org.osn.ejb.BulkEmailListenerMDB</ejb-class>
      
       <transaction-type>Container</transaction-type>
       <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
       <message-driven-destination>
       <destination-type>javax.jms.Queue</destination-type>
       <subscription-durability>Durable</subscription-durability>
       </message-driven-destination>
      
       </message-driven>
      


      jboss.xml
       <message-driven>
       <ejb-name>EmailListener</ejb-name>
       <destination-jndi-name>queue/EmailMDBQueue</destination-jndi-name>
       </message-driven>
       <message-driven>
       <ejb-name>BulkEmailListener</ejb-name>
       <destination-jndi-name>queue/BulkEmailMDBQueue</destination-jndi-name>
       </message-driven>
      


      Thanks!