The oracle-xa-ds.xml sample file located at /docs/examples/jca tell us to NOT FORGET TO SET Pad=true IN transaction-service.xml, however, there is no such line on this file.
Documentation says (http://docs.jboss.org/jbossas/getting_started/v5/html/db.html#d0e2115):
8.3.1. Padding Xid Values for Oracle Compatibility
If you look in the jboss-service.xml file in the default/conf directory, you will find the following service MBean.<!-- The configurable Xid factory. For use with Oracle, set pad to true --> <mbean code="org.jboss.tm.XidFactory" name="jboss:service=XidFactory"> <!--attribute name="Pad">true</attribute--> </mbean>
The transaction service uses this to create XA transactions identifiers. The comment explains the situation: for use with Oracle you have to include the line which sets the attribute Pad to true. This activates padding the identifiers out to their maximum length of 64 bytes. Remember that you will have to restart JBoss for this change to be put into effect, but wait until you have installed the JDBC driver classes which we will talk about next.
I also found this page: