I have refracted my question with a sample app and trace logs.
I have created a switchyard component with jms binding and camel implementation - This component picks the message from TransactionRequestQueue and puts in TransactionResponseQueue,in case of any exception ie., connection not available or queue not available the transaction needs to rollback and put the message in error queue.i have set the address setting for TransactionRequestQueue to try for 4 times with a delay of 5 secs.
Steps as below:
Created two queues as below,in order to rollback the transaction,i did not create the TransactionResponseQueue.
Address Setting configuration :
I have used global transaction policy in switchyard component and suspended it before sending to Error Queue.
But the message is not being sent to Error queue.Attached sample app and Trace logs
Can you please let me know what is the problem.