Hi, I'm new to camel and trying to replace an existing non-camel simply
message router which reads from one mq and then writes to another (both are
websphere mq) with camel. However when I test the updated camel process, I
get the following error: "MQJMS2007: failed to send message to MQ queue;
nested exception is com.ibm.mq.MQException: MQJE001: Completion Code 2,
Reason 2027" due to the ReplyTo on the queue message not being set.

I have no control over the incoming messages and have already specified to
disable ReplyTo in my endpoint config.  All I'm trying to do is re-route the
message to another queue...

I'm using Camel 2.8, JDK 1.6, & Spring 3.0.5.

Here is my spring/camel context:

<beans xmlns="http://www.springframework.org/schema/beans";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xmlns:camel="http://camel.apache.org/schema/spring";
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd";>

  <camel:camelContext id="globalCamelContext">
    <camel:propertyPlaceholder id="properties"
location="classpath:devProps.properties" />

    <camel:endpoint id="jmsMQReceiverEndPoint"
                   
uri="jmsQueue:queue:${mq.receiver.queue}?testConnectionOnStartup=true&amp;disableReplyTo=true"
/>
    <camel:endpoint id="jmsMQErrorEndPoint"
                   
uri="jmsQueue:queue:${mq.error.queue}?testConnectionOnStartup=true&amp;disableReplyTo=true"
/>

    <camel:route id="messageRoute">
      <camel:from ref="jmsMQReceiverEndPoint" />
      <camel:log message="process message: ${id} ${body}"
loggingLevel="INFO" />
      <camel:to ref="jmsMQErrorEndPoint" />
    </camel:route>

  </camel:camelContext>

  
  <bean id="myConnectionFactory"
class="com.ibm.mq.jms.MQQueueConnectionFactory">
    <property name="hostName" value="${mq.hostname}" />
    <property name="port" value="${mq.port}" />
    <property name="queueManager" value="${mq.queueManager}" />
    <property name="channel" value="${mq.queueChannel}" />
    <property name="transportType" value="1" />
    <property name="securityExit" value="${mq.channelSecurityExit}" />
  </bean>

  <bean id="jmsQueue" class="org.apache.camel.component.jms.JmsComponent">
    <property name="connectionFactory" ref="myConnectionFactory" />
  </bean>
</beans>

Here is the exection I get:
Caused by: org.springframework.jms.UncategorizedJmsException: Uncategorized
exception occured during JMS processing; nested exception is
javax.jms.JMSException: MQJMS2007: failed to send message to MQ queue;
nested exception is com.ibm.mq.MQException: MQJE001: Completion Code 2,
Reason 2027
        at
org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:316)
        at
org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168)
        at 
org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469)
        at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:172)
        at 
org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:347)
        at
org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:303)
        at 
org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:101)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:114)
        at
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:286)
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:109)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:69)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:318)
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:209)
        at
org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:305)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:116)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:79)
        at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:102)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:69)
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:104)
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
        at
org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:91)
        ... 11 more
Caused by: javax.jms.JMSException: MQJMS2007: failed to send message to MQ
queue
        at
com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:595)
        at
com.ibm.mq.jms.MQMessageProducer.sendInternal(MQMessageProducer.java:1820)
        at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:1130)
        at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:1183)
        at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:592)
        at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSend(JmsConfiguration.java:260)
        at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:199)
        at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:141)
        at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:175)
        at 
org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:466)
        ... 42 more

Any help would be great, thanks.


--
View this message in context: 
http://camel.465427.n5.nabble.com/JMS-Websphere-MQ-Error-MQJE001-Completion-Code-2-Reason-2027-tp4713509p4713509.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to