The answer to your question is that it all depends on how you define your service.
In ESB 4.2 it is possible to have transactional delivery of messages if you define a JCA inflow for the message whereas ESB 4.2.1 extended this to support an explicit provider for the JMS/JCA inflow case.
If you have a look in the codebase, specifically around http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/qa/junit/resources/server/jcaTx/META-INF/jboss-esb.xml, then you can see a simple example we use during our testing.
It you use the jms-jca-provider then the message will be delivered within the context of a transaction and any XA resources used during the processing of the pipeline can be enlisted into the active transaction.
The link that Kevin gives in his reply is now broken. Does this examples still exist somewhere else?