We can use delay in Aq adapter , which means message in Aq queue message is visible to external world (who are consuming the message) once the delay time over.
To set this property we have to do the below things.
Create a variable in bpel a process and assign the value as 300. which means 5 minutes.
Now configure your AQ adapter as usual and for invoking this AQ adapter you will use invoke activity.
In invoke activity properties we have a property as “jca.aq.Delay” .
Assign the variable that you have create in 1st step and deploy.
That’s it , if you test the interface you will see that every message has delay of 5 minutes.