Hi I have implemented the fix in the codebase. You are welcome to test with latest source code or wait for the Camel 2.3 release, which is out in a couple of weeks.
On Thu, May 20, 2010 at 2:54 PM, Claus Ibsen <claus.ib...@gmail.com> wrote: > Hi > > I have created a ticket > https://issues.apache.org/activemq/browse/CAMEL-2742 > > You could most likely use a custom JMSBinding by setting it on the endpoint > uri > > to("mq:xxxx?binding=#myCustomBinding"); > > And then myCustomBinding is the id of a bean in the registry to lookup > as a JmsBinding type. > > Otherwise if you do not need the given property you can also provide a > custom header filter strategy where you can skip this header. > Or use a custom messageConverter when you can do all the mapping yourself. > > > On Thu, May 20, 2010 at 2:26 PM, dlawson <david.law...@metastorm.com> wrote: >> >> To All: >> >> >> I am experiencing a problem when routing a Camel message from ActiveMQ to >> WebSphereMQ 7 using the JMSComponent. My Camel version is 2.2.0. As the >> stack trace below indicates, >> >> the exception is thrown when the "JMS-IBM_Last_Msg_In_Group" header/property >> in the Camel Message is being mapped to the JMS message property. The >> underlying JMS Message >> >> expects the field to be of type Boolean but Camel is delivering it as a >> String. In the Camel JMSBinding class, the getValidJMSHeaderValue method is >> performing the following >> >> mapping: >> >> >> 390 protected Object getValidJMSHeaderValue(String headerName, Object >> headerValue) { >> 391 if (headerValue instanceof String) { >> 392 return headerValue; >> 393 } else if (headerValue instanceof Number) { >> 394 return headerValue; >> 395 } else if (headerValue instanceof Character) { >> 396 return headerValue; >> 397 } else if (headerValue instanceof CharSequence) { >> 398 return headerValue.toString(); >> 399 } else if (headerValue instanceof Boolean) { >> 400 return headerValue.toString(); >> 401 } else if (headerValue instanceof Date) { >> 402 return headerValue.toString(); >> 403 } >> 404 return null; >> 405 } >> >> Is there a way to specify a custom JMSBinding in this instance or do I have >> to patch the code to get around this problem? Thanks, >> >> David >> >> >> >> >> org.springframework.jms.MessageFormatException: JMSCC0051: The property >> 'JMS_IBM_Last_Msg_In_Group' should be set using type 'java.lang.Boolean', >> not 'java.lang.String'.; >> >> nested exception is com.ibm.msg.client.jms.DetailedMessageFormatException: >> JMSCC0051: The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', >> >> not 'java.lang.String'. JMS_IBM properties may only be set using a specific >> variable type. Correct application code to use the required variable type >> when setting this JMS_IBM >> >> property. >> at >> org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:289) >> at >> org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:474) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:195) >> at >> org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:375) >> at >> org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:320) >> at >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:150) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) >> at >> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) >> at >> org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) >> at >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) >> at >> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82) >> at >> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88) >> at >> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >> at >> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228) >> at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) >> at >> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:66) >> at >> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:84) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:543) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:482) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:451) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:323) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:261) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:982) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:974) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:876) >> at java.lang.Thread.run(Thread.java:619) >> Caused by: com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: >> The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'. JMS_IBM properties may only be set using a specific >> variable type. Correct application code to use the required variable type >> when setting this JMS_IBM >> >> property. >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) >> at >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) >> at java.lang.reflect.Constructor.newInstance(Constructor.java:513) >> at >> com.ibm.msg.client.commonservices.j2se.NLSServices.createException(NLSServices.java:313) >> at >> com.ibm.msg.client.commonservices.nls.NLSServices.createException(NLSServices.java:390) >> at >> com.ibm.msg.client.jms.internal.JmsErrorUtils.createException(JmsErrorUtils.java:104) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.checkSettablePropertyName(JmsMessageImpl.java:1968) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.setObjectProperty(JmsMessageImpl.java:1502) >> at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:1421) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperty(JmsBinding.java:336) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:300) >> at >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:278) >> at >> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:316) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:221) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:164) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:198) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471) >> ... 33 more >> DEBUG 19 May 2010 14:11:06,531 [DefaultErrorHandler:377] - This exchange is >> not handled so its marked as failed: Exchange[JmsMessage: >> ActiveMQTextMessage {commandId = 5, >> >> responseRequired = true, messageId = >> ID:DLAWSON701-58897-1274292657513-0:17:1:1:1, originalDestination = null, >> originalTransactionId = null, producerId = ID:DLAWSON701-58897- >> >> 1274292657513-0:17:1:1, destination = queue://NEXUS.FTS.DATA.JMSNODE1, >> transactionId = null, expiration = 0, timestamp = 1274292665860, arrival = >> 0, brokerInTime = >> >> 1274292665860, brokerOutTime = 1274292666034, correlationId = null, replyTo >> = null, persistent = true, type = null, priority = 4, groupID = >> 9TTY5M6LGOH7NSWA2LY2K29V, >> >> groupSequence = 15, targetConsumerId = null, compressed = false, userID = >> null, content = null, marshalledProperties = >> org.apache.activemq.util.byteseque...@4e32c8, >> >> dataStructure = null, redeliveryCounter = 0, size = 0, properties = >> {seqnum=15, JMS_IBM_Last_Msg_In_Group=true}, readOnlyProperties = true, >> readOnlyBody = true, droppable = >> >> false, text = }] >> DEBUG 19 May 2010 14:11:06,532 [Pipeline:99] - Message exchange has failed >> so breaking out of pipeline: Exchange[JmsMessage: ActiveMQTextMessage >> {commandId = 5, >> >> responseRequired = true, messageId = >> ID:DLAWSON701-58897-1274292657513-0:17:1:1:1, originalDestination = null, >> originalTransactionId = null, producerId = ID:DLAWSON701-58897- >> >> 1274292657513-0:17:1:1, destination = queue://NEXUS.FTS.DATA.JMSNODE1, >> transactionId = null, expiration = 0, timestamp = 1274292665860, arrival = >> 0, brokerInTime = >> >> 1274292665860, brokerOutTime = 1274292666034, correlationId = null, replyTo >> = null, persistent = true, type = null, priority = 4, groupID = >> 9TTY5M6LGOH7NSWA2LY2K29V, >> >> groupSequence = 15, targetConsumerId = null, compressed = false, userID = >> null, content = null, marshalledProperties = >> org.apache.activemq.util.byteseque...@4e32c8, >> >> dataStructure = null, redeliveryCounter = 0, size = 0, properties = >> {seqnum=15, JMS_IBM_Last_Msg_In_Group=true}, readOnlyProperties = true, >> readOnlyBody = true, droppable = >> >> false, text = }] Exception: org.springframework.jms.MessageFormatException: >> JMSCC0051: The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', >> >> not 'java.lang.String'.; nested exception is >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using >> >> type 'java.lang.Boolean', not 'java.lang.String'. JMS_IBM properties may >> only be set using a specific variable type. Correct application code to use >> the required variable type >> >> when setting this JMS_IBM property. >> ERROR 19 May 2010 14:11:06,533 [EndpointMessageListener:248] - Caused by: >> [org.apache.camel.RuntimeCamelException - >> org.springframework.jms.MessageFormatException: JMSCC0051: >> >> The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not 'java.lang.String'.; nested exception is >> >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'. JMS_IBM properties may only be set using a specific >> variable type. Correct application code to use the required variable type >> when setting this JMS_IBM >> >> property.] >> org.apache.camel.RuntimeCamelException: >> org.springframework.jms.MessageFormatException: JMSCC0051: The property >> 'JMS_IBM_Last_Msg_In_Group' should be set using type >> >> 'java.lang.Boolean', not 'java.lang.String'.; nested exception is >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' >> >> should be set using type 'java.lang.Boolean', not 'java.lang.String'. >> JMS_IBM properties may only be set using a specific variable type. Correct >> application code to use the >> >> required variable type when setting this JMS_IBM property. >> at >> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1055) >> at >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:104) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:543) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:482) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:451) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:323) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:261) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:982) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:974) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:876) >> at java.lang.Thread.run(Thread.java:619) >> Caused by: org.springframework.jms.MessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'.; nested exception is >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> >> 'java.lang.Boolean', not 'java.lang.String'. JMS_IBM properties may only be >> set using a specific variable type. Correct application code to use the >> required variable type when >> >> setting this JMS_IBM property. >> at >> org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:289) >> at >> org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:474) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:195) >> at >> org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:375) >> at >> org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:320) >> at >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:150) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) >> at >> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) >> at >> org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) >> at >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) >> at >> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82) >> at >> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88) >> at >> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >> at >> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228) >> at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) >> at >> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:66) >> at >> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:84) >> ... 9 more >> Caused by: com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: >> The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'. JMS_IBM properties may only be set using a specific >> variable type. Correct application code to use the required variable type >> when setting this JMS_IBM >> >> property. >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) >> at >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) >> at java.lang.reflect.Constructor.newInstance(Constructor.java:513) >> at >> com.ibm.msg.client.commonservices.j2se.NLSServices.createException(NLSServices.java:313) >> at >> com.ibm.msg.client.commonservices.nls.NLSServices.createException(NLSServices.java:390) >> at >> com.ibm.msg.client.jms.internal.JmsErrorUtils.createException(JmsErrorUtils.java:104) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.checkSettablePropertyName(JmsMessageImpl.java:1968) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.setObjectProperty(JmsMessageImpl.java:1502) >> at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:1421) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperty(JmsBinding.java:336) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:300) >> at >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:278) >> at >> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:316) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:221) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:164) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:198) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471) >> ... 33 more >> WARN 19 May 2010 14:11:06,534 [DefaultMessageListenerContainer:646] - >> Execution of JMS message listener failed >> org.apache.camel.RuntimeCamelException: >> org.springframework.jms.MessageFormatException: JMSCC0051: The property >> 'JMS_IBM_Last_Msg_In_Group' should be set using type >> >> 'java.lang.Boolean', not 'java.lang.String'.; nested exception is >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' >> >> should be set using type 'java.lang.Boolean', not 'java.lang.String'. >> JMS_IBM properties may only be set using a specific variable type. Correct >> application code to use the >> >> required variable type when setting this JMS_IBM property. >> at >> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1055) >> at >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:104) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:543) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:482) >> at >> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:451) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:323) >> at >> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:261) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:982) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:974) >> at >> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:876) >> at java.lang.Thread.run(Thread.java:619) >> Caused by: org.springframework.jms.MessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'.; nested exception is >> com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: The >> property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> >> 'java.lang.Boolean', not 'java.lang.String'. JMS_IBM properties may only be >> set using a specific variable type. Correct application code to use the >> required variable type when >> >> setting this JMS_IBM property. >> at >> org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:289) >> at >> org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:474) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:195) >> at >> org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:375) >> at >> org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:320) >> at >> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:150) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) >> at >> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) >> at >> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) >> at >> org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) >> at >> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) >> at >> org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82) >> at >> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143) >> at >> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88) >> at >> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) >> at >> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228) >> at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) >> at >> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:66) >> at >> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48) >> at >> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) >> at >> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:84) >> ... 9 more >> Caused by: com.ibm.msg.client.jms.DetailedMessageFormatException: JMSCC0051: >> The property 'JMS_IBM_Last_Msg_In_Group' should be set using type >> 'java.lang.Boolean', not >> >> 'java.lang.String'. JMS_IBM properties may only be set using a specific >> variable type. Correct application code to use the required variable type >> when setting this JMS_IBM >> >> property. >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) >> at >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) >> at java.lang.reflect.Constructor.newInstance(Constructor.java:513) >> at >> com.ibm.msg.client.commonservices.j2se.NLSServices.createException(NLSServices.java:313) >> at >> com.ibm.msg.client.commonservices.nls.NLSServices.createException(NLSServices.java:390) >> at >> com.ibm.msg.client.jms.internal.JmsErrorUtils.createException(JmsErrorUtils.java:104) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.checkSettablePropertyName(JmsMessageImpl.java:1968) >> at >> com.ibm.msg.client.jms.internal.JmsMessageImpl.setObjectProperty(JmsMessageImpl.java:1502) >> at com.ibm.jms.JMSMessage.setObjectProperty(JMSMessage.java:1421) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperty(JmsBinding.java:336) >> at >> org.apache.camel.component.jms.JmsBinding.appendJmsProperties(JmsBinding.java:300) >> at >> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:278) >> at >> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:316) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.doSendToDestination(JmsConfiguration.java:221) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$100(JmsConfiguration.java:164) >> at >> org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:198) >> at >> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471) >> >> -- >> View this message in context: >> http://old.nabble.com/jmsbinding-problem-tp28620489p28620489.html >> Sent from the Camel - Users mailing list archive at Nabble.com. >> >> > > > > -- > Claus Ibsen > Apache Camel Committer > > Author of Camel in Action: http://www.manning.com/ibsen/ > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus > -- Claus Ibsen Apache Camel Committer Author of Camel in Action: http://www.manning.com/ibsen/ Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus