1、JDBC提供者
WAS內置了MS SQL SERVER的驅動,所以JDBC的提供者你可以選擇WAS內置的JDBC驅動.
配置參數如下:
提供者名稱:
MS SQL SERVER(XA) (可以自己隨便取)
類別路徑:
${WAS_LIBS_DIR}/sqlserver.jar
${WAS_LIBS_DIR}/base.jar
${WAS_LIBS_DIR}/util.jar
${WAS_LIBS_DIR}/spy.jar
實作類別名稱:
com.ibm.websphere.jdbcx.sqlserver.SQLServerDataSource
2、數據源的配置方法與其它DB的數據源配置方法無異。
可參考:
http://www.blogjava.net/fastzch/archive/2006/12/03/85176.html3、關鍵部分,配置你的SQL SERVER DB,使其支持XA方式。
(1)到下面這個地址下載SQL SERVER支援XA的驅動:
ftp://ftp.software.ibm.com/software/websphere/info/tools/DataDirect/datadirect.htm 也可以到MS的官方網站下載對應的驅動。
(2)下載後會有一個RAR包,將其解壓,根據你的OS是32位還是64位來決定你要選用哪個sqljdbc.dll
將此文件放入SQL SERVER安裝目錄的BINN目錄下。
(3)重啟SQL SERVER DB。
(4)在Master資料庫上運行RAR包中的instjdbc.sql這個SQL
/**//*
** INSTJDBC.SQL
** Installs XA stored procedures used by the JDBC driver
*/
go
use master
go
dump tran master with no_log
go
/**//*
** drop procedures if they're already in the database
*/
sp_dropextendedproc 'xp_jdbc_open'
go
sp_dropextendedproc 'xp_jdbc_open2'
go
sp_dropextendedproc 'xp_jdbc_close'
go
sp_dropextendedproc 'xp_jdbc_close2'
go
sp_dropextendedproc 'xp_jdbc_start'
go
sp_dropextendedproc 'xp_jdbc_start2'
go
sp_dropextendedproc 'xp_jdbc_end'
go
sp_dropextendedproc 'xp_jdbc_end2'
go
sp_dropextendedproc 'xp_jdbc_prepare'
go
sp_dropextendedproc 'xp_jdbc_prepare2'
go
sp_dropextendedproc 'xp_jdbc_commit'
go
sp_dropextendedproc 'xp_jdbc_commit2'
go
sp_dropextendedproc 'xp_jdbc_rollback'
go
sp_dropextendedproc 'xp_jdbc_rollback2'
go
sp_dropextendedproc 'xp_jdbc_forget'
go
sp_dropextendedproc 'xp_jdbc_forget2'
go
sp_dropextendedproc 'xp_jdbc_recover'
go
sp_dropextendedproc 'xp_jdbc_recover2'
go
dump tran master with no_log
go
/**//*
** add references for the stored procedures
*/
print 'creating JDBC XA procedures'
go
sp_addextendedproc 'xp_jdbc_open', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_open2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_close', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_close2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_start', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_start2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_end', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_end2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_prepare', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_prepare2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_commit', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_commit2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_rollback', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_rollback2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_forget', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_forget2', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_recover', 'sqljdbc.dll'
go
sp_addextendedproc 'xp_jdbc_recover2', 'sqljdbc.dll'
go
/**//*
** grant privileges so that all users can enlist in XA transactions
*/
grant execute on xp_jdbc_open to public
go
grant execute on xp_jdbc_open2 to public
go
grant execute on xp_jdbc_close to public
go
grant execute on xp_jdbc_close2 to public
go
grant execute on xp_jdbc_start to public
go
grant execute on xp_jdbc_start2 to public
go
grant execute on xp_jdbc_end to public
go
grant execute on xp_jdbc_end2 to public
go
grant execute on xp_jdbc_prepare to public
go
grant execute on xp_jdbc_prepare2 to public
go
grant execute on xp_jdbc_commit to public
go
grant execute on xp_jdbc_commit2 to public
go
grant execute on xp_jdbc_rollback to public
go
grant execute on xp_jdbc_rollback2 to public
go
grant execute on xp_jdbc_forget to public
go
grant execute on xp_jdbc_forget2 to public
go
grant execute on xp_jdbc_recover to public
go
grant execute on xp_jdbc_recover2 to public
go
print ''
print 'instxa.sql completed successfully.'
go
dump tran master with no_log
go
checkpoint
go
/** *//**/
4、在控制面板的服務中,啟動“Distributed Transaction Coordinator”服務。
此服務的作用如下:協調跨越多個資源管理員的交易,比如資料庫、訊息佇列及檔案系統。如果此服務被停止,這些交易將不會發生。如果服務被停用,任何明顯依存它的服務將無法啟動。
5、測試數據源:
完成!
posted on 2007-07-10 20:43
Robin's Programming World 阅读(3153)
评论(1) 编辑 收藏 所属分类:
Java 、
Webshere 、
DB