1、JDBC提供者
WAS內(nèi)置了MS SQL SERVER的驅(qū)動(dòng),所以JDBC的提供者你可以選擇WAS內(nèi)置的JDBC驅(qū)動(dòng).
配置參數(shù)如下:
提供者名稱(chēng):
MS SQL SERVER(XA) (可以自己隨便取)
類(lèi)別路徑:
${WAS_LIBS_DIR}/sqlserver.jar
${WAS_LIBS_DIR}/base.jar
${WAS_LIBS_DIR}/util.jar
${WAS_LIBS_DIR}/spy.jar
實(shí)作類(lèi)別名稱(chēng):
com.ibm.websphere.jdbcx.sqlserver.SQLServerDataSource
2、數(shù)據(jù)源的配置方法與其它DB的數(shù)據(jù)源配置方法無(wú)異。
可參考:
http://www.aygfsteel.com/fastzch/archive/2006/12/03/85176.html3、關(guān)鍵部分,配置你的SQL SERVER DB,使其支持XA方式。
(1)到下面這個(gè)地址下載SQL SERVER支援XA的驅(qū)動(dòng):
??????
ftp://ftp.software.ibm.com/software/websphere/info/tools/DataDirect/datadirect.htm??????也可以到MS的官方網(wǎng)站下載對(duì)應(yīng)的驅(qū)動(dòng)。
(2)下載後會(huì)有一個(gè)RAR包,將其解壓,根據(jù)你的OS是32位還是64位來(lái)決定你要選用哪個(gè)sqljdbc.dll
??????將此文件放入SQL SERVER安裝目錄的BINN目錄下。
(3)重啟SQL SERVER DB。
(4)在Master資料庫(kù)上運(yùn)行RAR包中的instjdbc.sql這個(gè)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、在控制面板的服務(wù)中,啟動(dòng)“Distributed Transaction Coordinator”服務(wù)。
??????此服務(wù)的作用如下:協(xié)調(diào)跨越多個(gè)資源管理員的交易,比如資料庫(kù)、訊息佇列及檔案系統(tǒng)。如果此服務(wù)被停止,這些交易將不會(huì)發(fā)生。如果服務(wù)被停用,任何明顯依存它的服務(wù)將無(wú)法啟動(dòng)。
5、測(cè)試數(shù)據(jù)源:
完成!
posted on 2007-07-10 20:43
Robin's Programming World 閱讀(3183)
評(píng)論(1) 編輯 收藏 所屬分類(lèi):
Java 、
Webshere 、
DB