Re: JMS Synchronous HTTP to JMS Invocation Error Handling
When using dual channel JMS. AFAIK how it internally works in the ESB is,
1. The incoming http message will be published to broker via JMS sender
2. When publishing the message will be given a Correlation id
3. ESB will create a temporary subscription to the reply JMS queue with the selector condition to filter out the co-relation id
Errors could occur during any of the steps mentioned above.
In order to handle them you could use the following,
- In order to prevent the error occurs in step #1 (when message is published) you need to use publisher transactions. (DLC will not be applicable for the messages which are being published)
- For #3 you could go with the options you mentioned, however the message will be sent to the DLC, when the number of retry counts breaches upon JMS subscription sending a reject. So you need to use Client-Acknowledgment mode
On Tue, May 2, 2017 at 2:40 PM, Isuru Haththotuwa <[hidden email]> wrote:
On Tue, May 2, 2017 at 1:54 PM, Isuru Haththotuwa <[hidden email]> wrote:
How should we do $subject ? AFAIU there are two possible alternatives:
Use JMS local transactions .
Use retrying and moving to DLC if a failure occurrs 
IMHO the best option is to use option #2. Since this is a synchronous invocation, and the client is waiting for a reply, it does not make sense to rollback.