Support custom resolution of response destination

Previously, the "pubSubDomain" drove the resolution of both the
destination of the listener and the default response destination.

A new "replyPubSubDomain" attribute has been added on the base listener
and  can be used to listen on a topic and reply to a queue (or vice
versa). The attribute is exposed via the "response-destination-type" XML
attribute on the listener container element. It is also available on the
JmsListenerContainerFactory for use with the @JmsListener infrastructure.

Issue: SPR-12911
This commit is contained in:
Stephane Nicoll
2015-04-16 17:29:48 +02:00
parent e403aefe86
commit 2c7d2d38a9
16 changed files with 835 additions and 16 deletions

View File

@@ -2869,7 +2869,7 @@ describes all available attributes:
| The name of the default response destination to send response messages to. This will
be applied in case of a request message that does not carry a "JMSReplyTo" field. The
type of this destination will be determined by the listener-container's
"destination-type" attribute. Note: This only applies to a listener method with a
"response-destination-type" attribute. Note: This only applies to a listener method with a
return value, for which each result object will be converted into a response message.
| subscription
@@ -2958,6 +2958,10 @@ choices and message redelivery scenarios.
and `subscriptionShared` properties of the container. The default is `queue` (i.e. disabling
those 3 properties).
| response-destination-type
| The JMS destination type for responses: "queue", "topic". Default is the value of the
"destination-type" attribute.
| client-id
| The JMS client id for this listener container. Needs to be specified when using
durable subscriptions.
@@ -3064,6 +3068,10 @@ table:
and `subscriptionShared` properties of the container. The default is `queue` (i.e. disabling
those 3 properties).
| response-destination-type
| The JMS destination type for responses: "queue", "topic". Default is the value of the
"destination-type" attribute.
| client-id
| The JMS client id for this listener container. Needs to be specified when using
durable subscriptions.