Posted on 2007-02-12 15:40
東舟 閱讀(7644)
評(píng)論(8) 編輯 收藏 所屬分類:
J2EE
BEA Tuxedo是在企業(yè)、Internet這樣的分布式運(yùn)算環(huán)境中開發(fā)和管理三層結(jié)構(gòu)的客戶/服務(wù)器型關(guān)鍵任務(wù)應(yīng)用系統(tǒng)的強(qiáng)有力工具。它具備分布式事務(wù)處理和應(yīng)用通信功能,并提供完善的各種服務(wù)來(lái)建立、運(yùn)行和管理關(guān)鍵任務(wù)應(yīng)用系統(tǒng)。BEA Tuxedo使分布式關(guān)鍵任務(wù)應(yīng)用系統(tǒng)具有大型主機(jī)的性能,從而使這些應(yīng)用系統(tǒng)能夠應(yīng)付數(shù)以萬(wàn)計(jì)的用戶,大交易吞吐量,多并行數(shù)據(jù)庫(kù)存取和大量數(shù)據(jù),同時(shí)保持較短的反應(yīng)時(shí)間,較高數(shù)據(jù)完整性和安全性,并且確保系統(tǒng)可用性。
??? 如何用JAVA調(diào)用Tuxedo服務(wù)呢?
??? 首先需要到BEA官方網(wǎng)站下載3個(gè)必須的JAR包:jolt.jar、joltjse.jar、joltwls.jar。
??? 調(diào)用程序如下:
???
?1?JoltSessionAttributes?sattr?=?null;
?2?JoltRemoteService?toupper?=?null;
?3?JoltTransaction?trans?=?null;
?4?String?userName?=?"";
?5?String?userPassword?=?"";
?6?String?appPassword?=?"";
?7?String?userRole?=?"";
?8?String?outstr;
?9?sattr?=?new?JoltSessionAttributes();
10?//建立目標(biāo)連接地址
11?sattr.setString(sattr.APPADDRESS,?"//10.154.56.23:44000");
12?//TIMEOUT時(shí)間
13?sattr.setInt(sattr.IDLETIMEOUT,?300);
14?//建立連接,初始化
15?bea.jolt.JoltSession?session?=?new?JoltSession(sattr,?userName,
16?????????userRole,?userPassword,?appPassword);
17?//需要的總控
18?toupper?=?new?JoltRemoteService("ITF_IBHSVC",?session);
19?
20?toupper.setStringItem("X_TRANS_CODE",?0,?"ITF_IBHT_ProdBusiTest");
21?
22?toupper.setStringItem("BIPVER",?0,?"0100");
23?toupper.setStringItem("ACTIVITYCODE",?0,?"T2001101");
24?toupper.setStringItem("ACTIONCODE",?0,?"0");
25?toupper.setStringItem("ROUTETYPE",?0,?"00");
26?toupper.setStringItem("ROUTEVALUE",?0,?"000");
27?toupper.setStringItem("PROCID",?0,?"");
28?toupper.setStringItem("TRANSIDO",?0,?"");
29?toupper.setStringItem("TRANSIDH",?0,?"");
30?toupper.setStringItem("PROCESSTIME",?0,?"20061218084532");
31?toupper.setStringItem("TRANSIDC",?0,?"");
32?toupper.setStringItem("CUTOFFDAY",?0,?"");
33?toupper.setStringItem("OSNDUNS",?0,?"");
34?toupper.setStringItem("HSNDUNS",?0,?"");
35?toupper.setStringItem("CONVID",?0,?"");
36?toupper.setStringItem("TESTFLAG",?0,?"0");
37?
38?//調(diào)用,返回
39?toupper.call(null);
40?
41?JoltDefinition?jd?=?toupper.getDefinition();
42?JoltMessage?jm?=?toupper.getOutputs();
43?
44?String[]?strPar?=?jm.toString().split("\":");
45?for?(int?i?=?0;?i?<?strPar.length;?i++)?{
46?????System.out.println("item:"?+?strPar[i]);
47?}
48?
49?session.endSession();