MDB listening on a remote queue is unable to connect to it if the queue name contains "/" character. For example
<queue name="something here/queue name">
<entry name="/something here/queue name"/>
</queue>
This happens if the queue is hosted by a remote HornetQ broker and is not defined on the local instance of HornetQ broker.
This is caused by the fact that the HornetQ activation works on assumption that the last part of the queue JNDI name (part after the last "/" character) and the queue internal real name are the same. Though this assumption is probably correct in most of the cases it cannot be said that it would correct under all circumstances. It would fail if the internal queue name contains "/" character. for example:
<queue name="jms/queue/myQueue">
<entry name="/jms/queue/myQueue"/>
</queue>
In the above case horentq assumes that the queue name is myQueue where as in reality the name is "jms/queue/myQueue".
It is also possible for the JNDI name and the queue name to be completely different. For example
<queue name="jms/queue/mail/postbox">
<entry name="/com/redhat/mailQueue"/>
</queue>
- is incorporated by
-
JBPAPP-6277 Post Pre-Release Fixes for HornetQ (Customer Specific)
- Resolved