Hi phoenixtern,
the annotation REQUIRED means, your MDB is running in a transaction. When your Tx rolls back, your message goes back in queue and will be sent again.
For a synchronous receive, use a session bean and receive the messages directly from the Queue.
Greetings,
Andy
[Message sent by forum member 'angerhard']
http://forums.java.net/jive/thread.jspa?messageID=400169