通过wtc使tuxedo与weblogic通信开发
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
标题:通过wtc、jolt进行tuxedo与weblogic通信开发
[评论]
作者:李振嘉(dev2dev ID:lizhenjia)
(一)摘要
bea tuxedo与weblogic作为业界优秀的交易与应用服务器中间件产品,在电信,银行,金融等领域广泛应用,通常由tuxedo处理系统的核心业务,weblogic将业务应用扩展到internet平台,实现电子商务,由weblogic调用tuxedo的服务或者由tuxedo的服务调用通过weblogic部署的ejb,所以tuxedo与weblogic 之间的互连通信会经常遇到,本文通过2个例子介绍tuxedo与weblogic通信的配置与开发,两个例子分别通过wtc(weblogic tuxedo connector)、jolt实现weblogic与tuxedo通信的配置与开发.本文所有例子程序与配置均在Sun Solaris,weblogic8.1,tuxedo8.0平台上进行,如在windows等其他平台开发配置方法大同小异;另外为了减少篇幅文中涉及的例子代码没有全部罗列,只选择粘贴了关键部分的代码.
(二)通过wtc进行tuxedo与weblogic通信的配置与开发
1)域间通信以及wtc介绍
Tuxedo的域间通信进程介绍
Wtc是tuxedo通过域间通信实现的,所以需要tuxedo启动用于域间通信的进程,介绍wtc之前先介绍以下几个域间通信的进程.
*DMADM(DOMAIN ADMINISTRATOR SERVER)
管理域的server,在运行时管理BDMCONFIG,对已登记的gateway group提供支持,在tuxedo系统中,只能有一个DMADM进程,且不能对它采用MSSQ,不能有REPLYQ.
*GWADM(GATEWAY ADMINISTRATOR SERVER)
管理域的域网关进程,在运行时可以对某一组域网关进行管理,主要从DMADM那里取得域的配置信息,并对域网管进程及跨越域的全局事务的LOG文件进行管理.
*GWTDOMIN(GATEWAY PROCESS)
处理域之前的互操作,使本地域和调用远程域可以互相调用彼此的service,其中GMADM和GWTDOMAIN 必须在一个组中,一个tuxedo应用可以有多个GWADM,GWTDOMAIN对,一个组只能有一个
GMADM,GWTDOMAIN对,但一个tuxedo应用只能有一个DMADM,DMADM可以在如何一个组中,一个本地域可以和多个远程域实现互操作.
Wtc介绍
Wtc(weblogic tuxedo connector)是weblogic server的一个组成部分,可以实现tuxedo和weblogic之间的应用集成,为weblogic和tuxedo提供了双向的互操作性,即tuxedo service可以调用在weblogic上部署的ejb,在weblogic上部署的ejb可以调用tuxedo的service.
2)Tuxedo方面需要进行的工作
修改并编译ubb文件
1)在ubb文件*GROUPS节点中增加如下3个tuxedo Group:
DMGroup
LMID=simple GRPNO=2 OPENINFO=NONE
DMGroup
LMID=simple GRPNO=3 OPENINFO=NONE
WSGroup
LMID=simple GRPNO=4 OPENINFO=NONE
2)在ubb文件*SERVERS节点中增加如下3个tuxedo server:
DMADM
SRVGRP=DMGroup SRVID=22230
GWADM
SRVGRP=GWGroup SRVID=22340
GWTDOMAIN
SRVGRP=GWGroup SRVID=22350
其中GWADM和GWTDOMAIN应该在同一个组中,保存ubb文件并按如下完成编译:
tmloadcf ubb_filename
之后tmboot-y启动tuxedo server,如果启动以上3个server时报类似Application initialization failure的启动失败的提示信息,那么注意查看tuxedo的ULOG日志文件,通过日志的提示排除错误,这里常见的一个错误是没有在系统环境变量中定义
BDMCONFIG或者指定该文件路径错误.(关于环境变量的修改见下文).
增加并编译dm文件
dm文件是tuxedo进行域间通信时的配置文件,tuxedo与weblogic通过wtc通信是通过域间通信实现的,所以dm文件需要创建,dm文件通常可以存放在ubb文件所在的路径下.
Dm需要做的配置如下:
*DM_LOCAL_DOMAINS
tuxedo_domain GWGRP=GWGroup
TYPE=TDOMAIN
DOMAINID=billing
DMTLOGDEV="/../../log/DLOG"
*DM_REMOTE_DOMAINS
weblogic_domain TYPE=TDOMAIN
DOMAINID=weblogic
*DM_TDOMAIN
tuxedo_domain NWADDR="//tuxedoserver_domain_ip:port
NWDEVICE="../../bin"
weblogic_domain NWADDR="//weblogicserver_domain_ip:port
*DM_REMOTE_SERVICES
*DM_LOCAL_SERVICES
fml32_test RNAME="fml32_test"
*DM_LOCAL_DOMAINS定义本地tuxedo域的信息,分别定义该域所在的组,域类型,域的唯一标识,域间通信时日志的全路径,其中GWGRP, DOMAINID的值要与ubb文件中的定义匹配.
*DM_REMOTE_DOMAINS定义远程weblogic域的信息,分别定义域类型,域的唯一性标识,该id标识需要与在weblogic server中的配置名称吻合,否则通信将会失败,关于在weblogic中的相应配置下文将作详细描述. *DM_TDOMAIN定义在DM_LOCAL_DOMAIN中已经说明的本地域和在DM_REMOTE_DOMAINS中已经说明的远程域的具体的通信ip地址以及通信端口,其中NWDEVICE指定tuxedo发布的server通信进程文件所在的路径. *DM_REMOTE_SERVICES定义当前域需要调用远程域的服务名称,本例中的服务作为被调用服务,所以此处可以为空.