On 14/11/2007, biouele <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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