Well this should not happen between actions in the pipeline, but only when routing between
services. The code base is now refactored (well almost) to always use the ServiceInvoker
for sending messages between services. Now look at the code in asyncDelivery:
| message.getProperties().setProperty(MessageStore.CLASSIFICATION,
MessageStore.CLASSIFICATION_RDLVR);
| message.getProperties().setProperty(DELIVER_TO, service);
| deliverToDeadLetterService(message);
|
If delivery fails it sets the TO service in a property as well as telling it to store it
in the MessageStore under classification RDLVR.
Now the Redeliver Service periodically wakes up and tries to redeliver all the messages in
the RDLVR classification. It uses the setting for the TO service to figure out where to
send it. Note that this is bound to the service address and not the EPR. For each retry it
will pull the latest EPR information for that service.
Going to work on making the maxRedeliveries configurable now :).
Does that help?
--Kurt
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4074005#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...