Theo đặc điểm kỹ thuật jdbc 4.0 (12.2):Nguồn dữ liệu XA tạo ra các kết nối XA có khả năng được sử dụng trong các giao dịch toàn cầu / phân tán. Bạn có thể cần một kết nối như vậy nếu bạn cần một giao dịch để mở rộng nhiều hơn một cơ sở dữ liệu hoặc một cuộc gọi JMS. Bạn có thể tìm thấy lời giải thích rõ ràng về khái niệm này tại đây: http:// www.theserverside.com/discussions/thread.tss?thread_id=21385#95346
Nếu bạn không có kịch bản giao dịch phân tán như vậy, bạn không cần chỉ định nguồn dữ liệu xa, cấu hình nguồn dữ liệu đơn giản là đủ. Vì vậy, nếu bạn sử dụng một nguồn dữ liệu đơn giản thì không cần chỉ định xa-datasource-class khi bạn khai báo trình điều khiển của mình.
<datasources>
<datasource jndi-name="java:/myDatasource" pool-name="MyDS" enabled="true" jta="true" use-java-context="true" use-ccm="true">
<connection-url>
jdbc:mysql://localhost:3306/mydb
</connection-url>
<driver>
mysql
</driver>
<transaction-isolation>
TRANSACTION_READ_COMMITTED
</transaction-isolation>
<pool>
<min-pool-size>
5
</min-pool-size>
<max-pool-size>
10
</max-pool-size>
<prefill>
true
</prefill>
<use-strict-min>
false
</use-strict-min>
<flush-strategy>
FailingConnectionOnly
</flush-strategy>
</pool>
<security>
<user-name>
username
</user-name>
<password>
password
</password>
</security>
</datasource>
<drivers>
<driver name="mysql" module="com.mysql"/>
</drivers>
</datasources>