[
https://jira.jboss.org/jira/browse/JBESB-2287?page=com.atlassian.jira.plu...
]
Daniel Bevenius closed JBESB-2287.
----------------------------------
Resolution: Done
Committed to main trunk with revision 24821.
Committed to JBESB_4_4_GA_CP with revision 24820.
DefaultJMSPropertiesSetter should filter out provider specific
properties when performing the mapping
-----------------------------------------------------------------------------------------------------
Key: JBESB-2287
URL:
https://jira.jboss.org/jira/browse/JBESB-2287
Project: JBoss ESB
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Examples, Transports
Affects Versions: 4.4, 4.4 CP1
Reporter: Tom Fennelly
Assignee: Daniel Bevenius
Fix For: 4.4 CP2, 4.5
Vendor Specific Properties:
=====================
"The JMS API reserves the JMS_vendor_name property name prefix for provider-specific
properties. Each provider defines its own value for vendor_name. This is the mechanism a
JMS provider uses to make its special per-message services available to a JMS client.
The purpose of provider-specific properties is to provide special features needed to
integrate JMS clients with provider-native clients in a single JMS application. They
should not be used for messaging between JMS clients."
JBossMQ definitely doesn't like these properties being mapped onto its messages.
I've seen it in a situation where the JMSGateway was running on WebsphereMQ and the
messages are then routed to a message aware listener on JBossMQ. My guess is that JBM is
not as sensitive.
Stack trace:
org.jboss.soa.esb.listeners.message.MessageDeliverException: Caught (un)marshal related
exception during attempted send/receive.
at
org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.attemptDelivery(ServiceInvoker.java:595)
at
org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.access$200(ServiceInvoker.java:492)
at org.jboss.soa.esb.client.ServiceInvoker.post(ServiceInvoker.java:346)
at org.jboss.soa.esb.client.ServiceInvoker.deliverAsync(ServiceInvoker.java:233)
at
org.jboss.soa.esb.client.ServiceInvoker.deliverToDeadLetterService(ServiceInvoker.java:275)
at org.jboss.soa.esb.client.ServiceInvoker.deliverAsync(ServiceInvoker.java:243)
at
org.jboss.soa.esb.listeners.gateway.JmsGatewayListener.doRun(JmsGatewayListener.java:175)
at
org.jboss.soa.esb.listeners.lifecycle.AbstractThreadedManagedLifecycle.run(AbstractThreadedManagedLifecycle.java:115)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.jboss.soa.esb.couriers.CourierMarshalUnmarshalException: Failed to set JMS
Message properties from ESB Message properties.
at org.jboss.internal.soa.esb.couriers.JmsCourier.deliver(JmsCourier.java:210)
at
org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.deliver(TwoWayCourierImpl.java:189)
at
org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.attemptDelivery(ServiceInvoker.java:571)
... 8 more
Caused by: javax.jms.JMSException: Illegal property name: JMS_IBM_PutApplType
at org.jboss.mq.SpyMessage.checkProperty(SpyMessage.java:996)
at org.jboss.mq.SpyMessage.setIntProperty(SpyMessage.java:715)
at
org.jboss.soa.esb.notification.jms.DefaultJMSPropertiesSetter.setProperties(DefaultJMSPropertiesSetter.java:161)
at
org.jboss.soa.esb.notification.jms.DefaultJMSPropertiesSetter.setJMSProperties(DefaultJMSPropertiesSetter.java:80)
at
org.jboss.internal.soa.esb.couriers.JmsCourier.setJMSProperties(JmsCourier.java:476)
at org.jboss.internal.soa.esb.couriers.JmsCourier.deliver(JmsCourier.java:208)
... 10 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira