Posted on 2007-02-12 15:40
东舟 阅读(7609)
评论(8) 编辑 收藏 所属分类:
J2EE
BEA Tuxedo是在企业、Internet这样的分布式运算环境中开发和管理三层结构的客户/服务器型关键任务应用系统的强有力工具。它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。BEA Tuxedo使分布式关键任务应用系统具有大型主机的性能,从而使这些应用系统能够应付数以万计的用户,大交易吞吐量,多并行数据库存取和大量数据,同时保持较短的反应时间,较高数据完整性和安全性,并且确保系统可用性。
如何用JAVA调用Tuxedo服务呢?
首先需要到BEA官方网站下载3个必须的JAR包:jolt.jar、joltjse.jar、joltwls.jar。
调用程序如下:
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 //建立目标连接地址
11 sattr.setString(sattr.APPADDRESS, "//10.154.56.23:44000");
12 //TIMEOUT时间
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 //调用,返回
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();