Xa数据源和非Xa数据源的选择

Posted mumian2

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xa数据源和非Xa数据源的选择相关的知识,希望对你有一定的参考价值。

Weblogic Xa数据源和非Xa数据源的选择

在项目上,不管是ADF应用,BPM应用,或者是OSB、SOA接口,数据源和出站连接池的建立必然少不了,而数据源的类型就有Xa数据源和非Xa数据源,那我们如何选择呢,选择不当会造成什么后果呢,下面给出一点小小的心得

如何选择:

在新建数据源的时候,经常面临是建立Xa数据源还是非Xa数据源,这块有一个选择标准,如果数据库后台package的函数或者过程

需要commit或者rollback,那么调用这个package的数据源就必须是非Xa的。

换言之,需要统一事物管理的用Xa数据源,事物需要单独处理的用非Xa数据源。

如Soa、Osb接口就需要用Xa数据源,ADF程序或者自开发的有用到JDBC连接方式的程序都需要用非Xa数据源

选择不当:

如果在调用程序中有commit或者rollback,而数据源又选择了Xa类型,后台 可能会出现如下错误

JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = wmsSqlServerDS

XA数据源超时设置:

XA数据源建立后,通常需要设置下事物超时和超时时间

以上是关于Xa数据源和非Xa数据源的选择的主要内容,如果未能解决你的问题,请参考以下文章

Repeater用ul li,一行显示多条数据

什么是 Type 4 XA 驱动程序?

如何实现XA式非XA式Spring分布式事务

ADO:防止更新的数据含有单引号而出错

Mysql数据库分布式事务XA详解

在 JBoss 上为 DB2 创建 XA 数据源