Camel 1.2 Websphere MQ 6 issue

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Camel 1.2 Websphere MQ 6 issue

biouele
I use camel 1.1 with Websphere QM 6 and initialize my router like this:
        CamelContext context = new DefaultCamelContext();
        MQQueueConnectionFactory connectionFactory = new MQQueueConnectionFactory();
        connectionFactory.setHostName("FBDEV012");
        connectionFactory.setPort(7675);
        connectionFactory.setTransportType(1);
        connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
        connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
        // note we can explicity name the component
        context.addComponent("test-jms", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
        context.addRoutes(new RouteBuilder()
        {
            public void configure()
            {
                from("test-jms:queue:DEV.SANDBOX2").process(new Processor(){
                                                                                        public void process(Exchange e) {
                                                                                                System.out.println("SANDBOX2->SANDBOX3: " + e.getIn().getBody().toString());
                                                                                        }
                                                                                }).to("test-jms:queue:DEV.SANDBOX3");
                       
            }
        });
        CamelTemplate template = new CamelTemplate(context);
        context.start();

It's works fine.

When a use camel 1.2 I have this error:

SANDBOX2->SANDBOX3: Message:0
Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
SEVERE: On delivery attempt: 0 caught: org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXAppID; nested exception is javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXAppID
org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXAppID; nested exception is javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXAppID
Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXAppID
        at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
        at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
        at org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
        at org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
        at org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
        at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
        at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
        at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
        at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
        at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
        at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
        at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
        at org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
        at java.lang.Thread.run(Thread.java:801)
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

jstrachan
so camel is trying to copy the input properties of the jms message to
the output message. This was fixed in 1.2.0. Though it seems that MQ
doesnt like folks trying to set the JMSXAppId header. I guess we need
to add a filter to the JmsBinding to ignore this header. I wonder if
there are others MQ doesnt like?

On 12/11/2007, biouele <[hidden email]> wrote:

>
> I use camel 1.1 with Websphere QM 6 and initialize my router like this:
>         CamelContext context = new DefaultCamelContext();
>         MQQueueConnectionFactory connectionFactory = new
> MQQueueConnectionFactory();
>         connectionFactory.setHostName("FBDEV012");
>         connectionFactory.setPort(7675);
>         connectionFactory.setTransportType(1);
>         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
>         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
>         // note we can explicity name the component
>         context.addComponent("test-jms",
> JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
>         context.addRoutes(new RouteBuilder()
>         {
>             public void configure()
>             {
>                 from("test-jms:queue:DEV.SANDBOX2").process(new Processor(){
> public void process(Exchange e) {
> System.out.println("SANDBOX2->SANDBOX3: " +
> e.getIn().getBody().toString());
> }
> }).to("test-jms:queue:DEV.SANDBOX3");
>
>             }
>         });
>         CamelTemplate template = new CamelTemplate(context);
>         context.start();
>
> It's works fine.
>
> When a use camel 1.2 I have this error:
>
> SANDBOX2->SANDBOX3: Message:0
> Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> SEVERE: On delivery attempt: 0 caught:
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> property name: JMSXAppID; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> JMSXAppID
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> property name: JMSXAppID; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> JMSXAppID
> Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message
> property name: JMSXAppID
> at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> at
> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> at
> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> at
> org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> at
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> at java.lang.Thread.run(Thread.java:801)
>
> --
> View this message in context:
> http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>


--
James
-------
http://macstrac.blogspot.com/

Open Source SOA
http://open.iona.com
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

jstrachan
I've raised this issue to track this...

https://issues.apache.org/activemq/browse/CAMEL-213

I've patched the code to explicitly exclude JMSXAppID which should fix
this - do you want to try out trunk to see if it fixes your issue? (Or
try tomorrows 1.3-SNAPSHOT distro). It could be MQ has one or two
other headers it doesn't like clients setting.


On 13/11/2007, James Strachan <[hidden email]> wrote:

> so camel is trying to copy the input properties of the jms message to
> the output message. This was fixed in 1.2.0. Though it seems that MQ
> doesnt like folks trying to set the JMSXAppId header. I guess we need
> to add a filter to the JmsBinding to ignore this header. I wonder if
> there are others MQ doesnt like?
>
> On 12/11/2007, biouele <[hidden email]> wrote:
> >
> > I use camel 1.1 with Websphere QM 6 and initialize my router like this:
> >         CamelContext context = new DefaultCamelContext();
> >         MQQueueConnectionFactory connectionFactory = new
> > MQQueueConnectionFactory();
> >         connectionFactory.setHostName("FBDEV012");
> >         connectionFactory.setPort(7675);
> >         connectionFactory.setTransportType(1);
> >         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
> >         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
> >         // note we can explicity name the component
> >         context.addComponent("test-jms",
> > JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
> >         context.addRoutes(new RouteBuilder()
> >         {
> >             public void configure()
> >             {
> >                 from("test-jms:queue:DEV.SANDBOX2").process(new Processor(){
> >                                                                                       public void process(Exchange e) {
> >                                                                                               System.out.println("SANDBOX2->SANDBOX3: " +
> > e.getIn().getBody().toString());
> >                                                                                       }
> >                                                                               }).to("test-jms:queue:DEV.SANDBOX3");
> >
> >             }
> >         });
> >         CamelTemplate template = new CamelTemplate(context);
> >         context.start();
> >
> > It's works fine.
> >
> > When a use camel 1.2 I have this error:
> >
> > SANDBOX2->SANDBOX3: Message:0
> > Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> > SEVERE: On delivery attempt: 0 caught:
> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID; nested exception is
> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> > JMSXAppID
> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID; nested exception is
> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> > JMSXAppID
> > Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID
> >       at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >       at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >       at
> > org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> >       at
> > org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> >       at
> > org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> >       at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >       at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >       at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >       at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >       at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> >       at
> > org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >       at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >       at
> > org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >       at
> > org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> >       at
> > org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >       at
> > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >       at
> > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >       at
> > org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >       at
> > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >       at
> > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> >       at
> > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >       at
> > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >       at java.lang.Thread.run(Thread.java:801)
> >
> > --
> > View this message in context:
> > http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> > Sent from the Camel - Users mailing list archive at Nabble.com.
> >
> >
>
>
> --
> James
> -------
> http://macstrac.blogspot.com/
>
> Open Source SOA
> http://open.iona.com
>


--
James
-------
http://macstrac.blogspot.com/

Open Source SOA
http://open.iona.com
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

biouele
Thanks for this patch
It's work with 2 JMS websphere MQ endpoints, but with 3 endpoints like this :

  from("jmsEndPointTX:DEV.SANDBOX2").to("jmsEndPointTX:DEV.SANDBOX3","jmsEndPointTX:DEV.SANDBOX4");

I have this error :

[11/14/07 11:16:10:262 EST] 00000067 SystemOut     O ERROR 2007-11-14 11:16:10,262 [DefaultMessageListenerContainer-40] org.apache.camel.processor.DeadLetterChannel: On delivery attempt: 0 caught: org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXDeliveryCount; nested exception is javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXDeliveryCount
org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXDeliveryCount; nested exception is javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXDeliveryCount
Caused by:
javax.jms.MessageFormatException: MQJMS1058: Invalid message property name: JMSXDeliveryCount
        at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
        at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
        at org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:131)
        at org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:95)
        at org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:115)
        at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
        at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
        at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:113)
        at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
        at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
        at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
        at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
        at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
        at org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:69)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:234)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
        at java.lang.Thread.run(Thread.java:801)

James.Strachan wrote
I've raised this issue to track this...

https://issues.apache.org/activemq/browse/CAMEL-213

I've patched the code to explicitly exclude JMSXAppID which should fix
this - do you want to try out trunk to see if it fixes your issue? (Or
try tomorrows 1.3-SNAPSHOT distro). It could be MQ has one or two
other headers it doesn't like clients setting.


On 13/11/2007, James Strachan <james.strachan@gmail.com> wrote:
> so camel is trying to copy the input properties of the jms message to
> the output message. This was fixed in 1.2.0. Though it seems that MQ
> doesnt like folks trying to set the JMSXAppId header. I guess we need
> to add a filter to the JmsBinding to ignore this header. I wonder if
> there are others MQ doesnt like?
>
> On 12/11/2007, biouele <jean-louis.biouele@fbn.ca> wrote:
> >
> > I use camel 1.1 with Websphere QM 6 and initialize my router like this:
> >         CamelContext context = new DefaultCamelContext();
> >         MQQueueConnectionFactory connectionFactory = new
> > MQQueueConnectionFactory();
> >         connectionFactory.setHostName("FBDEV012");
> >         connectionFactory.setPort(7675);
> >         connectionFactory.setTransportType(1);
> >         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
> >         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
> >         // note we can explicity name the component
> >         context.addComponent("test-jms",
> > JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
> >         context.addRoutes(new RouteBuilder()
> >         {
> >             public void configure()
> >             {
> >                 from("test-jms:queue:DEV.SANDBOX2").process(new Processor(){
> >                                                                                       public void process(Exchange e) {
> >                                                                                               System.out.println("SANDBOX2->SANDBOX3: " +
> > e.getIn().getBody().toString());
> >                                                                                       }
> >                                                                               }).to("test-jms:queue:DEV.SANDBOX3");
> >
> >             }
> >         });
> >         CamelTemplate template = new CamelTemplate(context);
> >         context.start();
> >
> > It's works fine.
> >
> > When a use camel 1.2 I have this error:
> >
> > SANDBOX2->SANDBOX3: Message:0
> > Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> > SEVERE: On delivery attempt: 0 caught:
> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID; nested exception is
> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> > JMSXAppID
> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID; nested exception is
> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
> > JMSXAppID
> > Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message
> > property name: JMSXAppID
> >       at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >       at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >       at
> > org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> >       at
> > org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> >       at
> > org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> >       at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >       at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >       at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >       at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >       at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> >       at
> > org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >       at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >       at
> > org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >       at
> > org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> >       at
> > org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >       at
> > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >       at
> > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >       at
> > org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >       at
> > org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >       at
> > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >       at
> > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> >       at
> > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >       at
> > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >       at java.lang.Thread.run(Thread.java:801)
> >
> > --
> > View this message in context:
> > http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> > Sent from the Camel - Users mailing list archive at Nabble.com.
> >
> >
>
>
> --
> James
> -------
> http://macstrac.blogspot.com/
>
> Open Source SOA
> http://open.iona.com
>


--
James
-------
http://macstrac.blogspot.com/

Open Source SOA
http://open.iona.com
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

jstrachan
On 14/11/2007, biouele <[hidden email]> wrote:
>
> Thanks for this patch
> It's work with 2 JMS websphere MQ endpoints, but with 3 endpoints like this

Damn! I've just been through the JMS specification again and p39 lists
the JMSX headers that should not be set by the user, so I now
explicitly ignore those. So fingers crossed, trunk should now work.
Please let us know how you get on!


> :
>
>
> from("jmsEndPointTX:DEV.SANDBOX2").to("jmsEndPointTX:DEV.SANDBOX3","jmsEndPointTX:DEV.SANDBOX4");
>
> I have this error :
>
> [11/14/07 11:16:10:262 EST] 00000067 SystemOut     O ERROR 2007-11-14
> 11:16:10,262 [DefaultMessageListenerContainer-40]
> org.apache.camel.processor.DeadLetterChannel: On delivery attempt: 0 caught:
>
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
>
> property name: JMSXDeliveryCount; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
>
> property name: JMSXDeliveryCount; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
> Caused by:
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
>         at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
>         at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
>         at
>
> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:131)
>         at
> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:95)
>         at
> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:115)
>
>         at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
>         at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
>         at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
>         at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
>
>         at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:113)
>
>         at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
>         at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
>         at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
>
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>
>         at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
>         at
>
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:69)
>
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
>         at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
>         at
>
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:234)
>
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
>         at java.lang.Thread.run(Thread.java:801)
>
>
>
> James.Strachan wrote:
> >
> > I've raised this issue to track this...
> >
> > https://issues.apache.org/activemq/browse/CAMEL-213
> >
> > I've patched the code to explicitly exclude JMSXAppID which should fix
> > this - do you want to try out trunk to see if it fixes your issue? (Or
> > try tomorrows 1.3-SNAPSHOT distro). It could be MQ has one or two
> > other headers it doesn't like clients setting.
> >
> >
> > On 13/11/2007, James Strachan <[hidden email]> wrote:
> >> so camel is trying to copy the input properties of the jms message to
> >> the output message. This was fixed in 1.2.0. Though it seems that MQ
> >> doesnt like folks trying to set the JMSXAppId header. I guess we need
> >> to add a filter to the JmsBinding to ignore this header. I wonder if
> >> there are others MQ doesnt like?
> >>
> >> On 12/11/2007, biouele <[hidden email]> wrote:
> >> >
> >> > I use camel 1.1 with Websphere QM 6 and initialize my router like this:
> >> >         CamelContext context = new DefaultCamelContext();
> >> >         MQQueueConnectionFactory connectionFactory = new
> >> > MQQueueConnectionFactory();
> >> >         connectionFactory.setHostName("FBDEV012");
> >> >         connectionFactory.setPort(7675);
> >> >         connectionFactory.setTransportType(1);
> >> >         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
> >> >         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
> >> >         // note we can explicity name the component
> >> >         context.addComponent("test-jms",
> >> > JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
> >> >         context.addRoutes(new RouteBuilder()
> >> >         {
> >> >             public void configure()
> >> >             {
> >> >                 from("test-jms:queue:DEV.SANDBOX2").process(new
> >> Processor(){
> >> >
> >> public void process(Exchange e) {
> >> >
> >> System.out.println("SANDBOX2->SANDBOX3: " +
> >> > e.getIn().getBody().toString());
> >> >
> >> }
> >> >
> >> }).to("test-jms:queue:DEV.SANDBOX3");
> >> >
> >> >             }
> >> >         });
> >> >         CamelTemplate template = new CamelTemplate(context);
> >> >         context.start();
> >> >
> >> > It's works fine.
> >> >
> >> > When a use camel 1.2 I have this error:
> >> >
> >> > SANDBOX2->SANDBOX3: Message:0
> >> > Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> >> > SEVERE: On delivery attempt: 0 caught:
> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >> > property name: JMSXAppID; nested exception is
> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >> > JMSXAppID
> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >> > property name: JMSXAppID; nested exception is
> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >> > JMSXAppID
> >> > Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message
> >> > property name: JMSXAppID
> >> >       at
> >> com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >> >       at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >> >       at
> >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> >> >       at
> >> >
> >> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >> >       at
> >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >> >       at
> >> >
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >> >       at
> >> >
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> >> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> >> >       at
> >> >
> >> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >> >       at
> >> >
> >> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >> >       at
> >> >
> >> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> >> >       at
> >> >
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >> >       at
> >> >
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >> >       at java.lang.Thread.run(Thread.java:801)
> >> >
> >> > --
> >> > View this message in context:
> >> >
> >> http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> >> > Sent from the Camel - Users mailing list archive at Nabble.com.
> >> >
> >> >
> >>
> >>
> >> --
> >> James
> >> -------
> >> http://macstrac.blogspot.com/
> >>
> >> Open Source SOA
> >> http://open.iona.com
> >>
> >
> >
> > --
> > James
> > -------
> > http://macstrac.blogspot.com/
> >
> > Open Source SOA
> > http://open.iona.com
> >
> >
>
>
> --
> View this message in context: http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13750530
>
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>


--
James
-------
http://macstrac.blogspot.com/

Open Source SOA
http://open.iona.com
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

biouele
Thank you , It works now but I have this warning any times I send message to JMS endpoint

[11/16/07 14:51:29:438 EST] 00000027 SystemOut     O WARN  2007-11-16 14:51:29,438 [DefaultMessageListenerContainer-375] org.apache.camel.component.jms.EndpointMessageListener: Cannot send reply message as there is no replyDestination for: JmsMessage: Message:0


James.Strachan wrote
On 14/11/2007, biouele <jean-louis.biouele@fbn.ca> wrote:
>
> Thanks for this patch
> It's work with 2 JMS websphere MQ endpoints, but with 3 endpoints like this

Damn! I've just been through the JMS specification again and p39 lists
the JMSX headers that should not be set by the user, so I now
explicitly ignore those. So fingers crossed, trunk should now work.
Please let us know how you get on!


> :
>
>
> from("jmsEndPointTX:DEV.SANDBOX2").to("jmsEndPointTX:DEV.SANDBOX3","jmsEndPointTX:DEV.SANDBOX4");
>
> I have this error :
>
> [11/14/07 11:16:10:262 EST] 00000067 SystemOut     O ERROR 2007-11-14
> 11:16:10,262 [DefaultMessageListenerContainer-40]
> org.apache.camel.processor.DeadLetterChannel: On delivery attempt: 0 caught:
>
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
>
> property name: JMSXDeliveryCount; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid message
>
> property name: JMSXDeliveryCount; nested exception is
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
> Caused by:
> javax.jms.MessageFormatException: MQJMS1058: Invalid message property name:
>
> JMSXDeliveryCount
>         at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
>         at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
>         at
>
> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:131)
>         at
> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:95)
>         at
> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:115)
>
>         at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
>         at org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
>         at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
>         at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
>
>         at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:113)
>
>         at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
>         at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
>         at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
>         at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
>
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
>
>         at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
>         at
>
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:69)
>
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
>         at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
>         at
>
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:234)
>
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
>         at java.lang.Thread.run(Thread.java:801)
>
>
>
> James.Strachan wrote:
> >
> > I've raised this issue to track this...
> >
> > https://issues.apache.org/activemq/browse/CAMEL-213
> >
> > I've patched the code to explicitly exclude JMSXAppID which should fix
> > this - do you want to try out trunk to see if it fixes your issue? (Or
> > try tomorrows 1.3-SNAPSHOT distro). It could be MQ has one or two
> > other headers it doesn't like clients setting.
> >
> >
> > On 13/11/2007, James Strachan <james.strachan@gmail.com> wrote:
> >> so camel is trying to copy the input properties of the jms message to
> >> the output message. This was fixed in 1.2.0. Though it seems that MQ
> >> doesnt like folks trying to set the JMSXAppId header. I guess we need
> >> to add a filter to the JmsBinding to ignore this header. I wonder if
> >> there are others MQ doesnt like?
> >>
> >> On 12/11/2007, biouele <jean-louis.biouele@fbn.ca> wrote:
> >> >
> >> > I use camel 1.1 with Websphere QM 6 and initialize my router like this:
> >> >         CamelContext context = new DefaultCamelContext();
> >> >         MQQueueConnectionFactory connectionFactory = new
> >> > MQQueueConnectionFactory();
> >> >         connectionFactory.setHostName("FBDEV012");
> >> >         connectionFactory.setPort(7675);
> >> >         connectionFactory.setTransportType(1);
> >> >         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
> >> >         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
> >> >         // note we can explicity name the component
> >> >         context.addComponent("test-jms",
> >> > JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
> >> >         context.addRoutes(new RouteBuilder()
> >> >         {
> >> >             public void configure()
> >> >             {
> >> >                 from("test-jms:queue:DEV.SANDBOX2").process(new
> >> Processor(){
> >> >
> >> public void process(Exchange e) {
> >> >
> >> System.out.println("SANDBOX2->SANDBOX3: " +
> >> > e.getIn().getBody().toString());
> >> >
> >> }
> >> >
> >> }).to("test-jms:queue:DEV.SANDBOX3");
> >> >
> >> >             }
> >> >         });
> >> >         CamelTemplate template = new CamelTemplate(context);
> >> >         context.start();
> >> >
> >> > It's works fine.
> >> >
> >> > When a use camel 1.2 I have this error:
> >> >
> >> > SANDBOX2->SANDBOX3: Message:0
> >> > Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> >> > SEVERE: On delivery attempt: 0 caught:
> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >> > property name: JMSXAppID; nested exception is
> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >> > JMSXAppID
> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >> > property name: JMSXAppID; nested exception is
> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >> > JMSXAppID
> >> > Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid message
> >> > property name: JMSXAppID
> >> >       at
> >> com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >> >       at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >> >       at
> >> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >> >       at
> >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> >> >       at
> >> >
> >> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >> >       at
> >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >> >       at
> >> >
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >> >       at
> >> >
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> >> >       at org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> >> >       at
> >> >
> >> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >> >       at
> >> >
> >> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >> >       at
> >> >
> >> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >> >       at
> >> >
> >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >> >       at
> >> >
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> >> >       at
> >> >
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >> >       at
> >> >
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >> >       at java.lang.Thread.run(Thread.java:801)
> >> >
> >> > --
> >> > View this message in context:
> >> >
> >> http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> >> > Sent from the Camel - Users mailing list archive at Nabble.com.
> >> >
> >> >
> >>
> >>
> >> --
> >> James
> >> -------
> >> http://macstrac.blogspot.com/
> >>
> >> Open Source SOA
> >> http://open.iona.com
> >>
> >
> >
> > --
> > James
> > -------
> > http://macstrac.blogspot.com/
> >
> > Open Source SOA
> > http://open.iona.com
> >
> >
>
>
> --
> View this message in context: http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13750530
>
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>


--
James
-------
http://macstrac.blogspot.com/

Open Source SOA
http://open.iona.com
Reply | Threaded
Open this post in threaded view
|

Re: Camel 1.2 Websphere MQ 6 issue

jstrachan
I recently lowered this logging message to debug level - its not
really a warning. If you switch to trunk you shouldn't get that any
more (unless you turn on DEBUG level logging).


On 16/11/2007, biouele <[hidden email]> wrote:

>
> Thank you , It works now but I have this warning any times I send message to
> JMS endpoint
>
> [11/16/07 14:51:29:438 EST] 00000027 SystemOut     O WARN  2007-11-16
> 14:51:29,438 [DefaultMessageListenerContainer-375]
> org.apache.camel.component.jms.EndpointMessageListener: Cannot send reply
> message as there is no replyDestination for: JmsMessage: Message:0
>
>
>
>
> James.Strachan wrote:
> >
> > On 14/11/2007, biouele <[hidden email]> wrote:
> >>
> >> Thanks for this patch
> >> It's work with 2 JMS websphere MQ endpoints, but with 3 endpoints like
> >> this
> >
> > Damn! I've just been through the JMS specification again and p39 lists
> > the JMSX headers that should not be set by the user, so I now
> > explicitly ignore those. So fingers crossed, trunk should now work.
> > Please let us know how you get on!
> >
> >
> >> :
> >>
> >>
> >> from("jmsEndPointTX:DEV.SANDBOX2").to("jmsEndPointTX:DEV.SANDBOX3","jmsEndPointTX:DEV.SANDBOX4");
> >>
> >> I have this error :
> >>
> >> [11/14/07 11:16:10:262 EST] 00000067 SystemOut     O ERROR 2007-11-14
> >> 11:16:10,262 [DefaultMessageListenerContainer-40]
> >> org.apache.camel.processor.DeadLetterChannel: On delivery attempt: 0
> >> caught:
> >>
> >> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >>
> >> property name: JMSXDeliveryCount; nested exception is
> >> javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >>
> >> JMSXDeliveryCount
> >> org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >>
> >> property name: JMSXDeliveryCount; nested exception is
> >> javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >>
> >> JMSXDeliveryCount
> >> Caused by:
> >> javax.jms.MessageFormatException: MQJMS1058: Invalid message property
> >> name:
> >>
> >> JMSXDeliveryCount
> >>         at
> >> com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >>         at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >>         at
> >>
> >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:131)
> >>         at
> >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:95)
> >>         at
> >> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:115)
> >>
> >>         at
> >> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >>         at
> >> org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >>         at
> >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >>         at
> >> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >>
> >>         at
> >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:113)
> >>
> >>         at
> >> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >>         at
> >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >>         at
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >>         at
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >>
> >>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:101)
> >>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:85)
> >>
> >>         at
> >> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >>         at
> >> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >>         at
> >> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >>         at
> >>
> >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:69)
> >>
> >>         at
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >>         at
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >>         at
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >>         at
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >>         at
> >>
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:234)
> >>
> >>         at
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >>         at
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >>         at java.lang.Thread.run(Thread.java:801)
> >>
> >>
> >>
> >> James.Strachan wrote:
> >> >
> >> > I've raised this issue to track this...
> >> >
> >> > https://issues.apache.org/activemq/browse/CAMEL-213
> >> >
> >> > I've patched the code to explicitly exclude JMSXAppID which should fix
> >> > this - do you want to try out trunk to see if it fixes your issue? (Or
> >> > try tomorrows 1.3-SNAPSHOT distro). It could be MQ has one or two
> >> > other headers it doesn't like clients setting.
> >> >
> >> >
> >> > On 13/11/2007, James Strachan <[hidden email]> wrote:
> >> >> so camel is trying to copy the input properties of the jms message to
> >> >> the output message. This was fixed in 1.2.0. Though it seems that MQ
> >> >> doesnt like folks trying to set the JMSXAppId header. I guess we need
> >> >> to add a filter to the JmsBinding to ignore this header. I wonder if
> >> >> there are others MQ doesnt like?
> >> >>
> >> >> On 12/11/2007, biouele <[hidden email]> wrote:
> >> >> >
> >> >> > I use camel 1.1 with Websphere QM 6 and initialize my router like
> >> this:
> >> >> >         CamelContext context = new DefaultCamelContext();
> >> >> >         MQQueueConnectionFactory connectionFactory = new
> >> >> > MQQueueConnectionFactory();
> >> >> >         connectionFactory.setHostName("FBDEV012");
> >> >> >         connectionFactory.setPort(7675);
> >> >> >         connectionFactory.setTransportType(1);
> >> >> >         connectionFactory.setChannel("FILLPROCESSOR.SVRCON");
> >> >> >         connectionFactory.setQueueManager("DEV.NBF.QUEUE.MANAGER");
> >> >> >         // note we can explicity name the component
> >> >> >         context.addComponent("test-jms",
> >> >> > JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));
> >> >> >         context.addRoutes(new RouteBuilder()
> >> >> >         {
> >> >> >             public void configure()
> >> >> >             {
> >> >> >                 from("test-jms:queue:DEV.SANDBOX2").process(new
> >> >> Processor(){
> >> >> >
> >> >> public void process(Exchange e) {
> >> >> >
> >> >> System.out.println("SANDBOX2->SANDBOX3: " +
> >> >> > e.getIn().getBody().toString());
> >> >> >
> >> >> }
> >> >> >
> >> >> }).to("test-jms:queue:DEV.SANDBOX3");
> >> >> >
> >> >> >             }
> >> >> >         });
> >> >> >         CamelTemplate template = new CamelTemplate(context);
> >> >> >         context.start();
> >> >> >
> >> >> > It's works fine.
> >> >> >
> >> >> > When a use camel 1.2 I have this error:
> >> >> >
> >> >> > SANDBOX2->SANDBOX3: Message:0
> >> >> > Nov 12, 2007 3:47:03 PM org.apache.camel.processor.Logger log
> >> >> > SEVERE: On delivery attempt: 0 caught:
> >> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> >> message
> >> >> > property name: JMSXAppID; nested exception is
> >> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message
> >> property
> >> >> name:
> >> >> > JMSXAppID
> >> >> > org.springframework.jms.MessageFormatException: MQJMS1058: Invalid
> >> >> message
> >> >> > property name: JMSXAppID; nested exception is
> >> >> > javax.jms.MessageFormatException: MQJMS1058: Invalid message
> >> property
> >> >> name:
> >> >> > JMSXAppID
> >> >> > Caused by: javax.jms.MessageFormatException: MQJMS1058: Invalid
> >> message
> >> >> > property name: JMSXAppID
> >> >> >       at
> >> >> com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4751)
> >> >> >       at
> >> com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:5655)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:127)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:90)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.component.jms.JmsProducer$1.createMessage(JmsProducer.java:48)
> >> >> >       at
> >> >> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:507)
> >> >> >       at
> >> >>
> >> org.springframework.jms.core.JmsTemplate$3.doInJms(JmsTemplate.java:487)
> >> >> >       at
> >> >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> >> >> >       at
> >> >> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:484)
> >> >> >       at
> >> >>
> >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:46)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsynProcessorBridge.process(AsyncProcessorTypeConverter.java:44)
> >> >> >       at
> >> >>
> >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:73)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:136)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:86)
> >> >> >       at
> >> org.apache.camel.processor.Pipeline.process(Pipeline.java:103)
> >> >> >       at
> >> org.apache.camel.processor.Pipeline.process(Pipeline.java:87)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:40)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:44)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:68)
> >> >> >       at
> >> >> >
> >> >>
> >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:56)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:510)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:445)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:414)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:309)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:254)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:871)
> >> >> >       at
> >> >> >
> >> >>
> >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:818)
> >> >> >       at java.lang.Thread.run(Thread.java:801)
> >> >> >
> >> >> > --
> >> >> > View this message in context:
> >> >> >
> >> >>
> >> http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13714148
> >> >> > Sent from the Camel - Users mailing list archive at Nabble.com.
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >> --
> >> >> James
> >> >> -------
> >> >> http://macstrac.blogspot.com/
> >> >>
> >> >> Open Source SOA
> >> >> http://open.iona.com
> >> >>
> >> >
> >> >
> >> > --
> >> > James
> >> > -------
> >> > http://macstrac.blogspot.com/
> >> >
> >> > Open Source SOA
> >> > http://open.iona.com
> >> >
> >> >
> >>
> >>
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13750530
> >>
> >> Sent from the Camel - Users mailing list archive at Nabble.com.
> >>
> >>
> >
> >
> > --
> > James
> > -------
> > http://macstrac.blogspot.com/
> >
> > Open Source SOA
> > http://open.iona.com
> >
> >
>
>
> --
> View this message in context: http://www.nabble.com/Camel-1.2-Websphere-MQ-6-issue-tf4793824s22882.html#a13800522
>
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>


--
James
-------
http://macstrac.blogspot.com/

Open Source Integration
http://open.iona.com