-
Type: Improvement
-
Status: New
-
Priority: Minor
-
Resolution: Unresolved
-
Affects Version/s: wd09
-
Fix Version/s: None
-
Component/s: JMS Mapping
-
Labels:None
AMQP binding specification documents the JMS temporary destinations in section "5.3 Temporary Destinations" (Working Draft 9). It defines terminus properties which are required to be set on creation of temporary destinations, lifecycle, etc. However, it does not define amqp error for attempt to attach a consumer to a temporary destination created on a different connection.
As per JMS 2.0 specification section "6.2.2 Creating temporary destinations" only consumers from connection created temporary destination can consume from the destination
Temporary destinations (TemporaryQueue or TemporaryTopic objects) are destinations that are system-generated uniquely for their connection.
Only their own connection is allowed to create consumer objects for them.
AMQP JMS bidning can be extended to specify an expected AMQP error code which should be returned a part of detach on attempt to attach a receiver to JMS temporary destination which was created on a different connection.
AMQP error "amqp:resource-locked" is the most appropriate error to be returned in this case.
As per AMQP specification section "2.8.15 AMQP Error"
The client attempted to work with a server entity to which it has no access because another
client is working with it.