spring-projects / spring-integration

Spring Integration provides an extension of the Spring programming model to support the well-known Enterprise Integration Patterns (EIP)
http://projects.spring.io/spring-integration/
Apache License 2.0
1.54k stars 1.11k forks source link

Add a default reply destination for the JMS inbound gateway [INT-580] #4590

Closed spring-operator closed 14 years ago

spring-operator commented 15 years ago

Mark Fisher opened INT-580 and commented

The JMSReplyTo property on the inbound Message should be considered first. However, if it is not set, then a default reply destination should be treated as a fallback. If neither is available, and there is indeed a reply Message to send, then an Exception should be thrown (as described in #4574 also).


Affects: 1.0 Final, 1.0.1

Issue Links:

spring-operator commented 15 years ago

Mark Fisher commented

This should also include namespace support. Basically we should add the following attributes to the "inbound-gateway" element: default-reply-destination default-reply-queue-name default-reply-topic-name destination-resolver

At most one of the first 3 should be provided. Of course, the final one is only necessary if one of the "name" options is being used. All of these are optional, but when there is no default, a JMSReplyTo property will be expected on the request message (as mentioned in the description).

spring-operator commented 15 years ago

Mark Fisher commented

The 'destination-resolver' attribute was already available since it could be used in combination with 'request-destination-name' (and the 'pub-sub-domain' boolean attribute).

As a side note, now that we have 'default-reply-queue-name' and 'default-reply-topic-name', we should consider changing the 'request-destination-name' + 'pub-sub-domain' to just one of the following: 'request-queue-name' or 'request-topic-name'. Because, this breaks backwards-compatibility (unless done as an addition - which might just add to the confusion), we should consider it for 2.0. At that point, we could clearly document the change.

spring-operator commented 15 years ago

Mark Fisher commented

Commit log details: https://fisheye.springframework.org/changelog/spring-integration/?cs=1943 https://fisheye.springframework.org/changelog/spring-integration/?cs=1945 https://fisheye.springframework.org/changelog/spring-integration/?cs=1946 https://fisheye.springframework.org/changelog/spring-integration?cs=1948

Build status: https://build.springframework.org/browse/INT-TRUNK-1464