下面通过一个例子介绍TUXEDO与WEBLOGIC通过WTC进行连接的配置方法。WEBLOGIC与TUXEDO的互连有两中方式,通过JOLT或通过WTC(WEBLOGIC TUXEDO CONNECTOR)。它们都是BEA的产品,WTC不仅能让WEBLOGIC调用TUXEDO中的SERVICE,而且能让TUXEDO调用WEBLOGIC中的EJB;而JOLT只能让WEBLOGIC调用TUXEDO. 但JOLT可以使TUXEDO与WEBSPERE等其他应用服务器相连,而WTC只能用于WEBLOGIC与TUXEDO之间进行互连。一、WTC说明(1)WEBLOIGIC5.1无法通过WTC与TUXEDO连接.(2)WEBLOGIC6.0与TUXEDO连接时,要安装WTC软件包.(3)WTC已集成在在EBLOGIC6.1中,只要配置一下就可以了,不用单独安装WTC软件包.(4)目前WTC只支持TUXEDO6.5,TUXEDO8.0两个版本,不支持TUXEDO7.1版本.(5)目前WTC有两个版本, Windows版本支持2000/NT,UNIX为统一版本.(6)WTC可从http://commerce.bea.com/downloads/tuxedo.jsp下载,目前的版本为1.0.二、WTC安装过程(1) WEBLOGIC与TUXEDO必须先安装好.(2)WTC要求在JAVA环境下安装,可在命令行下,运行weblogic主目录下config/EXAMPLE/setEnv.sh(NT/2000下为setenv.cmd)配置JAVA环境(3)在DOS命令行下执行安装程序WTC_10_win.exe。按提示操作就可以.注意:如果在WINDOW下安装,到COPY文件那一步时,不会执行,但提示安装成功,实际是假的。所以应在DOS命令行下安装.三、WTC配置说明TUXEDO与WEBLOGIC之间通过DOMAIN方式实现互相调用,在这个例子中有两个DOMAIN:TUXEDO所在的DOMAIN名为TDOM1, WEBLOGIC所在的 DOMAIN名为TDOM2。TDOM1上有TOUPPER它是一个TUXEDO SERVEICE,TDOM2上有TOLOWER它是一个EJB,下面以WTC安装带的例子simpapp(在WTC安装目录的examples/wtc/atmi/simpapp下)说明配置过程:TUXEO版本: TUXEDO65WEBLOGIC版本: WEBLOGIC6.0TUXEO安装目录: D:\TUXEDO65WEBLOGIC安装目录: D:\WEBLOGIC操作系统: WIN2000例子目录: D:\SIMPAPP(把WTC安装目录的examples/wtc/atmi/simpapp目录COPY到D:\SIMPAPP)服务器名: DEMOSERVERWTC安装目录: D:\WEBLOGIC\WTC1.0四、TUXEDO要做的配置(1)修改D:\SIMPAPP\SETENV.CMD为:set TUXDIR=d:\tuxedo65set WSNADDR=//DEMOSERVER:8888set APPDIR=d:\simpappset PATH=%TUXDIR%\bin;%APPDIR%;%PATH%set TUXCONFIG=%APPDIR%\tuxconfigset BDMCONFIG=%APPDIR%/dbmconfig(2)修改D:\SIMPAPP\UBBDOMAIN为:*RESOURCESIPCKEY 123456DOMAINID simpappMASTER simpleMAXACCESSERS 10MAXSERVERS 5MAXSERVICES 10MODEL SHMLDBAL N*MACHINESDEMOSERVER LMID=simpleAPPDIR="d:\simpapp"TUXCONFIG="d:\simpapp\tuxconfig"TUXDIR="d:\tuxedo65"*GROUPSGROUP1LMID=simple GRPNO=1 OPENINFO=NONE*SERVERSDEFAULT:CLOPT="-A"simpserv SRVGRP=GROUP1 SRVID=1*SERVICESTOUPPER(3)修改D:\SIMPAPP\DOM1CONFIG:修改dom1config,加入TLOG的路径和AUDITLOG的路径。然后修改TDOM1的NWADDR="IP:PORT"为TUXEDO的IP和端口,TDOM2的NWADDR="IP:PORT"为WEBLOGIC的IP和端口。*DM_RESOURCESVERSION=U22*DM_LOCAL_DOMAINSTDOM1 GWGRP=GROUP2TYPE=TDOMAINDOMAINID="TDOM1"BLOCKTIME=20MAXDATALEN=56MAXRDOM=89TLOG="d:\simpapp\TLOG"AUDITLOG="d:\simpapp\AUDITLOG"*DM_REMOTE_DOMAINSTDOM2 TYPE=TDOMAINDOMAINID="TDOM2"*DM_TDOMAINTDOM1 NWADDR="//DEMOSERVER:9998"TDOM2 NWADDR="//DEMOSERVER:9999"*DM_REMOTE_SERVICESTOLOWER RDOM="TDOM2"(4) tmloadcf -y ubbdomain(5) mloadcf -y dom1config(6)buildserver -o simpserv -f simpserv.c -s TOUPPER(7)将examples/wtc/atmi/simpapp/simpserv下的tolower.c 拷贝到D:\SIMPAPP,并执行buildclinet -v -f tolower.c -o tolower五、WEBLOGIC要做的配置(1)修改weblogic目录下config/examples/setExamplesEnv.cmd及startExamplesServer.cmd,在CLASSPATH中加入:d:\weblogic\wtc1.0\lib/jatmi.jar。执行setExamplesEnv.cmd(2)修改bdmconfig.xml修改<!DOCTYPE>中的:[WTC installation directory]\weblogic\wtc\gwt\wtc_config_1_0.dtd(WLS60)修���TDOM1和TDOM2的NWADDR和TUXEDO中的dom1config中的一致如果tuxedo为6.5版本则在<T_DM_LOCAL_TDOMAIN AccessPoint="TDOM2">中加入<Interoperate>Yes</Interoperate>如果为TUXEOD8.0则不需要。(3)修改后的bdmconfig.xml内容如下:<?xml version="1.0"?><!DOCTYPE BDMCONFIG SYSTEM "file:D:\weblogic\wtc1.0\weblogic\wtc\gwt\wtc_config_1_0.dtd"><!--Java and XML--><WTC_CONFIG><BDMCONFIG><T_DM_LOCAL_TDOMAIN AccessPoint="TDOM2"><WlsClusterName>Coolio</WlsClusterName><AccessPointId>TDOM2</AccessPointId><Type>TDOMAIN</Type><Security>NONE</Security><ConnectionPolicy>ON_DEMAND</ConnectionPolicy><BlockTime>30</BlockTime><NWAddr>//DEMOSERVER:9999</NWAddr><!-- Example address: //mydomain.acme.com:9999 --><Interoperate>Yes</Interoperate></T_DM_LOCAL_TDOMAIN><T_DM_REMOTE_TDOMAIN AccessPoint="TDOM1"><LocalAccessPoint>TDOM2</LocalAccessPoint><AccessPointId>TDOM1</AccessPointId><Type>TDOMAIN</Type><NWAddr>//DEMOSERVER:9998</NWAddr><!-- Example address: //mydomain.acme.com:9998 --></T_DM_REMOTE_TDOMAIN><T_DM_EXPORT ResourceName="TOLOWER"LocalAccessPoint="TDOM2"><EJBName>tuxedo.services.TOLOWERHome</EJBName></T_DM_EXPORT><T_DM_IMPORTResourceName="TOUPPER"LocalAccessPoint="TDOM2"RemoteAccessPointList="TDOM1"><TranTime>600</TranTime></T_DM_IMPORT></BDMCONFIG></WTC_CONFIG>(4)执行java weblogic.wtc.gwt.WTCValidateCF bdmconfig.xml监测xml是否正确。(5)在D:\SIMPAPP下执行build命令,然后在D:\weblogic\wtc1.0\examples\simpserv下执行build命令(6)启动welogic(7)察看wtc_tolower.jar、wtc_toupper.jar是否deploy成功(8)建立一个WEBLOGIC StartUp Class:classname为 weblogic.wtc.gwt.WTCStartup 参数为BDMCONFIG=D:\SIMPAPP\bdmconfig.xml,并设置其TARGET为EXAMPLESERVER(9)建立一个WEBLOGIC ShutDown Class:classname为weblogic.wtc.gwt.WTCShutdown,并设置其TARGET为EXAMPLESERVER(10)重新启动weblogic,并注意WEBLOGIC的启动日志看StartUp Class启动过程是否成功,失败会报错,成功没有提示信息如果失败没有检查config.xml中是否为<StartupClass Arguments="BDMCONFIG=d:\wtc_load4\examples\simpapp\bdmconfig.xml" ClassName="weblogic.wtc1.0.gwt.WTCStartup" FailureIsFatal="false" Name="MyWTCStartup Class" Targets="myserver"/><ShutdownClass Arguments="" ClassName="weblogic.wtc1.0.gwt.WTCShutdown" Name="MyWTCShutdown Class"/>六、启动tuxedo七、运行例子在d:/simpapp下执行run.cmd,这是WEBLOGIC 做CLIENT端调用Toupper ejb,由Toupper ejb调用TUXEDO的SERVICE:TOUPPER在d:/simpapp下执行run.cmd,这是TUXEDO做CLIENT端调用WEBLOGIC中的Tolower ejb,八、如果是WEBLOGIC6.1TUXEDO的配置不变WEBLOGIC中从(2)开始配置.其中:DMCONFIG.XML中的,因为WEBLOGIC6.1中找不到wtc_config_1_0.dtd,可从WEBLOGIC6.1拷贝一个到WEBLOGIC6.1的安装目录下:如D:\WEBLOGIC6.1,并在DMCONFIG.XML指定它的路径<!DOCTYPE BDMCONFIG SYSTEM "file:D:\weblogic6.1\wtc_config_1_0.dtd">九、失败处理如果失败,可设置weblogic.wtc.gwt.WTCStartup的跟踪选项,即把它的参数设置为: BDMCONFIG=D:\simpapp\bdmconfig.xml,TraceLevel=20000并请查看WEBLOGIC,TUXEDO的日志.做相应的处理。