Uploaded image for project: 'Mule'
  1. Mule
  2. MULE-2407

Failed to close jms session consumer

    Details

    • Type: Bug
    • Status: Closed
    • Priority: To be reviewed
    • Resolution: Won't Fix or Usage Issue
    • Affects Version/s: 1.4.2
    • Fix Version/s: None
    • Component/s: Transport: JMS
    • Labels:
      None
    • Environment:

      Window-XP, jdk 1.4.2, Mule 1.4.2, apache-activemq-4.1.1 openejb-core-1.0

    • Configuration:
      Hide

      <?xml version="1.0" encoding="UTF-8"?>

      <!DOCTYPE mule-configuration PUBLIC "-//MuleSource //DTD mule-configuration XML V1.0//EN"
      "http://mule.mulesource.org/dtds/mule-configuration.dtd">

      <mule-configuration id="Mule_Loan_broker_ESB" version="1.0">
      <description>
      The Loan Broker ESB example implements the Loan Broker Example using an ESB topology.
      See http://mule.mulesource.org/wiki/display/MULE/LoanBroker+ESB for details.
      </description>

      <!-- Embed Spring configuration to create a Jms Connection factory -->
      <container-context className="org.mule.extras.spring.SpringContainerContext">
      <properties>
      <text-property name="configuration">
      <![CDATA[
      <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
      <beans>
      <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
      <property name="brokerURL"><value>vm://localhost?broker.persistent=false&broker.useJmx=false</value></property>
      </bean>
      </beans>
      ]]>
      </text-property>
      </properties>
      </container-context>

      <connector name="ejbConnector" className="org.mule.providers.ejb.EjbConnector">
      <properties>
      <property name="jndiInitialFactory" value="org.openejb.client.LocalInitialContextFactory"/>
      <property name="securityPolicy" value="security.policy"/>
      <map name="jndiProviderProperties">
      <system-property name="openejb.base" key="mule.home"/>
      <property name="openejb.configuration" value="./lib/user/openejb.conf"/>
      <property name="logging.conf" value="./conf/log4j.properties"/>
      <property name="openejb.nobanner" value="true"/>
      <!-- Override properties for unit tests. -->
      <file-properties location="openejb.properties" override="true"/>
      </map>
      </properties>
      </connector>

      <connector name="jmsConnector" className="org.mule.providers.jms.activemq.ActiveMqJmsConnector">
      <properties>
      <!-- The ActiveMQ ConnectionFactory is configured as a Spring bean. -->
      <container-property name="connectionFactory" reference="jmsConnectionFactory"/>
      <property name="specification" value="1.1"/>
      </properties>
      </connector>

      <transformers>
      <transformer name="Request" className="com.order.jms.ValidateOrder"/>
      </transformers>

      <model name="order-jms">

      <mule-descriptor name="order" implementation="com.order.jms.SaveOrder">

      <inbound-router>
      <endpoint address="axis:http://localhost:8383/services" transformers="Request" />
      </inbound-router>
      <outbound-router>
      <router className="org.mule.routing.outbound.OutboundPassThroughRouter">
      <endpoint address="jms://order.view">
      <properties>
      <property value="wrapped" name="style"/>
      <property value="literal" name="use"/>
      <property name="methodNamespace" value="http://jms.order.com"/>
      </properties>
      </endpoint>
      </router>
      </outbound-router>

      </mule-descriptor>

      <mule-descriptor name="view" implementation="com.order.jms.ViewOrder">
      <inbound-router>
      <endpoint address="jms://order.view"/>
      </inbound-router>

      </mule-descriptor>

      </model>
      </mule-configuration>

      Show
      <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mule-configuration PUBLIC "-//MuleSource //DTD mule-configuration XML V1.0//EN" "http://mule.mulesource.org/dtds/mule-configuration.dtd"> <mule-configuration id="Mule_Loan_broker_ESB" version="1.0"> <description> The Loan Broker ESB example implements the Loan Broker Example using an ESB topology. See http://mule.mulesource.org/wiki/display/MULE/LoanBroker+ESB for details. </description> <!-- Embed Spring configuration to create a Jms Connection factory --> <container-context className="org.mule.extras.spring.SpringContainerContext"> <properties> <text-property name="configuration"> <![CDATA[ <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL"><value>vm://localhost?broker.persistent=false&broker.useJmx=false</value></property> </bean> </beans> ]]> </text-property> </properties> </container-context> <connector name="ejbConnector" className="org.mule.providers.ejb.EjbConnector"> <properties> <property name="jndiInitialFactory" value="org.openejb.client.LocalInitialContextFactory"/> <property name="securityPolicy" value="security.policy"/> <map name="jndiProviderProperties"> <system-property name="openejb.base" key="mule.home"/> <property name="openejb.configuration" value="./lib/user/openejb.conf"/> <property name="logging.conf" value="./conf/log4j.properties"/> <property name="openejb.nobanner" value="true"/> <!-- Override properties for unit tests. --> <file-properties location="openejb.properties" override="true"/> </map> </properties> </connector> <connector name="jmsConnector" className="org.mule.providers.jms.activemq.ActiveMqJmsConnector"> <properties> <!-- The ActiveMQ ConnectionFactory is configured as a Spring bean. --> <container-property name="connectionFactory" reference="jmsConnectionFactory"/> <property name="specification" value="1.1"/> </properties> </connector> <transformers> <transformer name="Request" className="com.order.jms.ValidateOrder"/> </transformers> <model name="order-jms"> <mule-descriptor name="order" implementation="com.order.jms.SaveOrder"> <inbound-router> <endpoint address="axis: http://localhost:8383/services " transformers="Request" /> </inbound-router> <outbound-router> <router className="org.mule.routing.outbound.OutboundPassThroughRouter"> <endpoint address="jms://order.view"> <properties> <property value="wrapped" name="style"/> <property value="literal" name="use"/> <property name="methodNamespace" value="http://jms.order.com"/> </properties> </endpoint> </router> </outbound-router> </mule-descriptor> <mule-descriptor name="view" implementation="com.order.jms.ViewOrder"> <inbound-router> <endpoint address="jms://order.view"/> </inbound-router> </mule-descriptor> </model> </mule-configuration>

      Description

      Hi

      I tried mule with jms, the following steps show the flow of my example.

      saveOrder class (service)-- used to save the order
      viewOrder class (Service )--- it used to send all order details to user
      ValidateOrder class (Transformer )-- used to validate the order, whether the order is duplicate or not

      user----> http:\\localhost:8383\services -------------->Validate Transformer--------->Save Order------------------------>ViewOrder

      i got following error while runing the above example. please help me to solve this problem.

      ERROR 2007-09-19 11:19:00,711 [Thread-0] org.mule.providers.jms.activemq.ActiveM
      qJmsConnector: Failed to close jms session consumer
      javax.jms.JMSException: Peer (vm://localhost#1) disposed.
      at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSuppot.java:58)
      at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnec
      tion.java:1157)
      at org.apache.activemq.ActiveMQSession.close(ActiveMQSession.java:517)
      at org.mule.providers.jms.JmsConnector.close(JmsConnector.java:979)
      at org.mule.providers.jms.JmsConnector.closeQuietly(JmsConnector.java:99
      3)
      at org.mule.providers.jms.SingleJmsMessageReceiver.closeConsumer(SingleJ
      msMessageReceiver.java:167)
      at org.mule.providers.jms.SingleJmsMessageReceiver.doDisconnect(SingleJm
      sMessageReceiver.java:74)
      at org.mule.providers.AbstractMessageReceiver.disconnect(AbstractMessage
      Receiver.java:437)
      at org.mule.providers.AbstractMessageReceiver.stop(AbstractMessageReceiv
      er.java:469)
      at org.mule.providers.AbstractConnector.stopConnector(AbstractConnector.
      java:428)
      at org.mule.providers.AbstractConnector.dispose(AbstractConnector.java:4
      67)
      at org.mule.MuleManager.disposeConnectors(MuleManager.java:487)
      at org.mule.MuleManager.dispose(MuleManager.java:424)
      at org.mule.MuleManager$ShutdownThread.run(MuleManager.java:1634)
      Caused by: org.apache.activemq.transport.TransportDisposedIOException: Peer (vm:

        Attachments

          Activity

            People

            • Assignee:
              dirk Dirk Olmes
              Reporter:
              babuj03 babu jayaraman
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Backbone Issue Sync

                • It looks like Backbone Issue Sync is not enabled for your project.