org.mule.umo.lifecycle.LifecycleException: Initialisation Failure: The Consumer is closed

Mirth Project | Bryce Prescott | 5 years ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    Channels that use a JMS Reader connector or JMS Writer connector must be redeployed (or stopped then started) after the ActiveMQ broker it is connected to restarts. The problem is this: When ActiveMQ is restarted (or in my case, software that uses an embedded broker) any channel that is connected to that broker will throw this error: 2012-08-02 07:37:00,343] ERROR (com.mirth.connect.connectors.jms.JmsMessageReceiver:409): Initialisation Failure: The Consumer is closed org.mule.umo.lifecycle.LifecycleException: Initialisation Failure: The Consumer is closed at com.mirth.connect.connectors.jms.JmsMessageReceiver.doStop(JmsMessageReceiver.java:126) at org.mule.providers.AbstractMessageReceiver.stop(AbstractMessageReceiver.java:407) at org.mule.providers.AbstractMessageReceiver.dispose(AbstractMessageReceiver.java:306) at org.mule.providers.AbstractConnector.destroyReceiver(AbstractConnector.java:588) at org.mule.providers.AbstractConnector.unregisterListener(AbstractConnector.java:548) at org.mule.impl.model.AbstractModel.unregisterListeners(AbstractModel.java:280) at org.mule.impl.model.AbstractModel.stopComponent(AbstractModel.java:478) at org.mule.management.mbeans.ModelService.stopComponent(ModelService.java:55) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45) at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226) at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138) at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795) at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450) at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90) at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285) at java.security.AccessController.doPrivileged(Native Method) at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1390) at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807) at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322) at sun.rmi.transport.Transport$1.run(Transport.java:177) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:173) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679)Caused by: javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:811) at org.apache.activemq.ActiveMQMessageConsumer.setMessageListener(ActiveMQMessageConsumer.java:415) at com.mirth.connect.connectors.jms.JmsMessageReceiver.doStop(JmsMessageReceiver.java:123) ... 37 more This error appears in the Mirth Connect log but it does not show an error state directly on the channel nor does it send an alert. The channel never attempts to reconnect and will only resume processing messages if redeployed (or stopped and started). How to reproduce this error: 1. Setup ActiveMQ (or create an embedded ActiveMQ broker) 2. Create a channel with a JMS Reader connector and/or JMS Writer connector 3. Start ActiveMQ 4. Deploy channel 5. Stop ActiveMQ 6 (Optional). Queue message on ActiveMQ 7 (Optional). Start ActiveMQ (at this moment, the messages will be consumed). Recommendations: The LLP connectors are a great example of how this should work. The connections should be automatically reestablished ever x seconds. Any unsent messages on a JMS writer should be queued up as in the LLP Sender connector. The JMS Reader should simply retry to connect. This issue is similar to, but not exactly the same, as http://www.mirthcorp.com/community/issues/browse/MIRTH-1083

    Mirth Project | 5 years ago | Bryce Prescott
    org.mule.umo.lifecycle.LifecycleException: Initialisation Failure: The Consumer is closed
  2. 0

    Channels that use a JMS Reader connector or JMS Writer connector must be redeployed (or stopped then started) after the ActiveMQ broker it is connected to restarts. The problem is this: When ActiveMQ is restarted (or in my case, software that uses an embedded broker) any channel that is connected to that broker will throw this error: 2012-08-02 07:37:00,343] ERROR (com.mirth.connect.connectors.jms.JmsMessageReceiver:409): Initialisation Failure: The Consumer is closed org.mule.umo.lifecycle.LifecycleException: Initialisation Failure: The Consumer is closed at com.mirth.connect.connectors.jms.JmsMessageReceiver.doStop(JmsMessageReceiver.java:126) at org.mule.providers.AbstractMessageReceiver.stop(AbstractMessageReceiver.java:407) at org.mule.providers.AbstractMessageReceiver.dispose(AbstractMessageReceiver.java:306) at org.mule.providers.AbstractConnector.destroyReceiver(AbstractConnector.java:588) at org.mule.providers.AbstractConnector.unregisterListener(AbstractConnector.java:548) at org.mule.impl.model.AbstractModel.unregisterListeners(AbstractModel.java:280) at org.mule.impl.model.AbstractModel.stopComponent(AbstractModel.java:478) at org.mule.management.mbeans.ModelService.stopComponent(ModelService.java:55) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111) at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45) at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226) at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138) at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795) at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450) at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90) at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285) at java.security.AccessController.doPrivileged(Native Method) at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1390) at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807) at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322) at sun.rmi.transport.Transport$1.run(Transport.java:177) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:173) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679)Caused by: javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:811) at org.apache.activemq.ActiveMQMessageConsumer.setMessageListener(ActiveMQMessageConsumer.java:415) at com.mirth.connect.connectors.jms.JmsMessageReceiver.doStop(JmsMessageReceiver.java:123) ... 37 more This error appears in the Mirth Connect log but it does not show an error state directly on the channel nor does it send an alert. The channel never attempts to reconnect and will only resume processing messages if redeployed (or stopped and started). How to reproduce this error: 1. Setup ActiveMQ (or create an embedded ActiveMQ broker) 2. Create a channel with a JMS Reader connector and/or JMS Writer connector 3. Start ActiveMQ 4. Deploy channel 5. Stop ActiveMQ 6 (Optional). Queue message on ActiveMQ 7 (Optional). Start ActiveMQ (at this moment, the messages will be consumed). Recommendations: The LLP connectors are a great example of how this should work. The connections should be automatically reestablished ever x seconds. Any unsent messages on a JMS writer should be queued up as in the LLP Sender connector. The JMS Reader should simply retry to connect. This issue is similar to, but not exactly the same, as http://www.mirthcorp.com/community/issues/browse/MIRTH-1083

    Mirth Project | 5 years ago | Bryce Prescott
    javax.jms.IllegalStateException: The Consumer is closed

    Root Cause Analysis

    1. javax.jms.IllegalStateException

      The Consumer is closed

      at org.apache.activemq.ActiveMQMessageConsumer.checkClosed()
    2. ActiveMQ :: Core
      ActiveMQMessageConsumer.setMessageListener
      1. org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:811)
      2. org.apache.activemq.ActiveMQMessageConsumer.setMessageListener(ActiveMQMessageConsumer.java:415)
      2 frames
    3. com.mirth.connect
      JmsMessageReceiver.doStop
      1. com.mirth.connect.connectors.jms.JmsMessageReceiver.doStop(JmsMessageReceiver.java:123)
      1 frame
    4. org.mule.providers
      AbstractConnector.unregisterListener
      1. org.mule.providers.AbstractMessageReceiver.stop(AbstractMessageReceiver.java:407)
      2. org.mule.providers.AbstractMessageReceiver.dispose(AbstractMessageReceiver.java:306)
      3. org.mule.providers.AbstractConnector.destroyReceiver(AbstractConnector.java:588)
      4. org.mule.providers.AbstractConnector.unregisterListener(AbstractConnector.java:548)
      4 frames
    5. org.mule.impl
      AbstractModel.stopComponent
      1. org.mule.impl.model.AbstractModel.unregisterListeners(AbstractModel.java:280)
      2. org.mule.impl.model.AbstractModel.stopComponent(AbstractModel.java:478)
      2 frames
    6. org.mule.management
      ModelService.stopComponent
      1. org.mule.management.mbeans.ModelService.stopComponent(ModelService.java:55)
      1 frame
    7. Java RT
      Thread.run
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      4. java.lang.reflect.Method.invoke(Method.java:616)
      5. com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:111)
      6. com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:45)
      7. com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:226)
      8. com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
      9. com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:251)
      10. com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:857)
      11. com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:795)
      12. javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1450)
      13. javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:90)
      14. javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1285)
      15. java.security.AccessController.doPrivileged(Native Method)
      16. javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1390)
      17. javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:807)
      18. sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
      19. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      20. java.lang.reflect.Method.invoke(Method.java:616)
      21. sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
      22. sun.rmi.transport.Transport$1.run(Transport.java:177)
      23. java.security.AccessController.doPrivileged(Native Method)
      24. sun.rmi.transport.Transport.serviceCall(Transport.java:173)
      25. sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
      26. sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
      27. sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
      28. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      29. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      30. java.lang.Thread.run(Thread.java:679)
      30 frames