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.