BEA公司的TUXEDO,WEBLOGIC作为最优秀的中间件产品,在银行、电信、金融等行业广泛使用,通常采用TUXEDO实现系统的核心业务,用WEBLOGIC做为系统扩展到INTERNET的平台,实现电子商务,由WEBLOGIC调用TUXEDO上的服务,所以TUXEDO与WEBLOGIC之间的互连经常遇到。 egT^
下面通过一个例子介绍TUXEDO与WEBLOGIC通过WTC进行连接的配置方法。 R
©WhiteLand -- Welcome WhiteLand  q?csm,
WEBLOGIC与TUXEDO的互连有两中方式,通过JOLT或通过WTC(WEBLOGIC TUXEDO CONNECTOR)。它们都是BEA的产品,WTC不仅能让WEBLOGIC调用TUXEDO中的SERVICE,而且能让TUXEDO调用WEBLOGIC中的EJB;而JOLT只能让WEBLOGIC调用TUXEDO. 但JOLT可以使TUXEDO与WEBSPERE等其他应用 LLpe0
服务器相连,而WTC只能用于WEBLOGIC与TUXEDO之间进行互连。 :whK
©WhiteLand -- Welcome WhiteLand  /),&p
一、WTC说明 ~
(1)WEBLOIGIC5.1无法通过WTC与TUXEDO连接. H,\
(2)WEBLOGIC6.0与TUXEDO连接时,要安装WTC软件包. FCU;
(3)WTC已集成在在EBLOGIC6.1中,只要配置一下就可以了,不用单独安装WTC软件包. {@B6$9
(4)目前WTC只支持TUXEDO6.5,TUXEDO8.0两个版本,不支持TUXEDO7.1版本. U
(5)目前WTC有两个版本, Windows版本支持2000/NT,UNIX为统一版本. 7r
(6)WTC可从http://commerce.bea.com/downloads/tuxedo.jsp下载,目前的版本为1.0. ?
©WhiteLand -- Welcome WhiteLand  )kNlr`
二、WTC安装过程 nwhk
(1) WEBLOGIC与TUXEDO必须先安装好. .dGv
(2)WTC要求在JAVA环境下安装,可在命令行下,运行weblogic主目录下config/EXAMPLE/setEnv.sh(NT/2000下为setenv.cmd)配置JAVA环境 ^KXG/.
(3)在DOS命令行下执行安装程序WTC_10_win.exe。按提示操作就可以. S=
注意:如果在WINDOW下安装,到COPY文件那一步时,不会执行,但提示安装成功,实际是假的。所以应在DOS命令行下安装. b_#
©WhiteLand -- Welcome WhiteLand  k4F
三、WTC配置说明 MxP?
TUXEDO与WEBLOGIC之间通过DOMAIN方式实现互相调用,在这个例子中有两个DOMAIN:TUXEDO所在的DOMAIN名为TDOM1, WEBLOGIC所在的 DOMAIN名为TDOM2。TDOM1上有TOUPPER它是一个TUXEDO SERVEICE,TDOM2上有TOLOWER它是一个EJB, h12%
下面以WTC安装带的例子simpapp(在WTC安装目录的examples/wtc/atmi/simpapp下)说明配置过程: K
TUXEO版本: TUXEDO65 _CvUrJ
WEBLOGIC版本: WEBLOGIC6.0 ]`[ri
TUXEO安装目录: D:\TUXEDO65 Ww^cV'
WEBLOGIC安装目录: D:\WEBLOGIC {_y
操作系统: WIN2000 N|
例子目录: D:\SIMPAPP(把WTC安装目录的examples/wtc/atmi/simpapp目录COPY到D:\SIMPAPP) cX6#
服务器名: DEMOSERVER 6_
WTC安装目录: D:\WEBLOGIC\WTC1.0 n
©WhiteLand -- Welcome WhiteLand  NSU3$%
四、TUXEDO要做的配置 #s
(1)修改D:\SIMPAPP\SETENV.CMD为: om
set TUXDIR=d:\tuxedo65 CBkf9
set WSNADDR=//DEMOSERVER:8888 A-<}T+
set APPDIR=d:\simpapp *FYw5!
set PATH=%TUXDIR%\bin;%APPDIR%;%PATH% @~p/*
set TUXCONFIG=%APPDIR%\tuxconfig Us9
set BDMCONFIG=%APPDIR%/dbmconfig Me
©WhiteLand -- Welcome WhiteLand  o/
(2)修改D:\SIMPAPP\UBBDOMAIN为: \t6AMI
*RESOURCES *4-TZ
IPCKEY 123456 8>f=
DOMAINID simpapp n`Fpw
MASTER simple _8
MAXACCESSERS 10 (}
MAXSERVERS 5 c,AC8E
MAXSERVICES 10 ;5
MODEL SHM 3
LDBAL N Ed1<
©WhiteLand -- Welcome WhiteLand  :0-J
*MACHINES LpBCe
DEMOSERVER LMID=simple L^dO'g
APPDIR="d:\simpapp" )!lN
TUXCONFIG="d:\simpapp\tuxconfig" 2h'{U6
TUXDIR="d:\tuxedo65" JbDP
©WhiteLand -- Welcome WhiteLand  z|K0
*GROUPS Y^'!
GROUP1 e
LMID=simple GRPNO=1 OPENINFO=NONE f
©WhiteLand -- Welcome WhiteLand  #z>
*SERVERS oz<3)f
DEFAULT: S
CLOPT="-A" a#FUJ
©WhiteLand -- Welcome WhiteLand  ! )-w
simpserv SRVGRP=GROUP1 SRVID=1 ~..PWQ
©WhiteLand -- Welcome WhiteLand  aXE-t
*SERVICES ";mQ2
TOUPPER \`u
©WhiteLand -- Welcome WhiteLand  la~4
(3)修改D:\SIMPAPP\DOM1CONFIG: UC/~
修改dom1config,加入TLOG的路径和AUDITLOG的路径。然后修改TDOM1的NWADDR="IP:PORT"为TUXEDO的IP和端口,TDOM2的 Y^>A8
NWADDR="IP:PORT"为WEBLOGIC的IP和端口。 ]p!Z{
©WhiteLand -- Welcome WhiteLand  nn'!0
*DM_RESOURCES n
VERSION=U22 _)".$
*DM_LOCAL_DOMAINS C-
TDOM1 GWGRP=GROUP2 )(^_&
TYPE=TDOMAIN Sp
DOMAINID="TDOM1" @dJ^0
BLOCKTIME=20  5Q~-L
MAXDATALEN=56  i
MAXRDOM=89  e~;u!
TLOG="d:\simpapp\TLOG" F&
AUDITLOG="d:\simpapp\AUDITLOG" EC3/2z
©WhiteLand -- Welcome WhiteLand  1JJ@S&
*DM_REMOTE_DOMAINS 5i~
TDOM2 TYPE=TDOMAIN {0Xb:Q
DOMAINID="TDOM2" x.
©WhiteLand -- Welcome WhiteLand  SL7
*DM_TDOMAIN ZD#
TDOM1 NWADDR="//DEMOSERVER:9998" 84}
TDOM2 NWADDR="//DEMOSERVER:9999" 0|
©WhiteLand -- Welcome WhiteLand  [
*DM_REMOTE_SERVICES B
TOLOWER RDOM="TDOM2" #h_`
©WhiteLand -- Welcome WhiteLand  qVeMeW
(4) tmloadcf -y ubbdomain X1
(5) mloadcf -y dom1config 6
(6)buildserver -o simpserv -f simpserv.c -s TOUPPER 6zw>sA
(7)将examples/wtc/atmi/simpapp/simpserv下的tolower.c 拷贝到D:\SIMPAPP,并执行buildclinet -v -f tolower.c -o tolower w;01Y
©WhiteLand -- Welcome WhiteLand  M
五、WEBLOGIC要做的配置 Z9&^i
(1)修改weblogic目录下config/examples/setExamplesEnv.cmd及startExamplesServer.cmd,在CLASSPATH中加入: 3z*5.
d:\weblogic\wtc1.0\lib/jatmi.jar。执行setExamplesEnv.cmd }H`6g]
(2)修改bdmconfig.xml  m:
修改<!DOCTYPE>中的:[WTC installation directory]\weblogic\wtc\gwt\wtc_config_1_0.dtd(WLS60) S
修改TDOM1和TDOM2的NWADDR和TUXEDO中的dom1config中的一致 ;
如果tuxedo为6.5版本则在<T_DM_LOCAL_TDOMAIN AccessPoint="TDOM2">中加入<Interoperate>Yes</Interoperate>如果为TUXEOD8.0则不需要。 X
(3)修改后的bdmconfig.xml内容如下: rB}
<?xml version="1.0"?> 0
©WhiteLand -- Welcome WhiteLand  EIMS,Q
<!DOCTYPE BDMCONFIG SYSTEM "file:D:\weblogic\wtc1.0\weblogic\wtc\gwt\wtc_config_1_0.dtd"> GnPm|>
©WhiteLand -- Welcome WhiteLand  m
<!--Java and XML--> H
<WTC_CONFIG> 5:d-DP
<BDMCONFIG> ^
<T_DM_LOCAL_TDOMAIN AccessPoint="TDOM2"> 0wh
<WlsClusterName>Coolio</WlsClusterName> d0a
<AccessPointId>TDOM2</AccessPointId> oa
<Type>TDOMAIN</Type> Ou&+m
<Security>NONE</Security> xEetD5
<ConnectionPolicy>ON_DEMAND</ConnectionPolicy> @\58
<BlockTime>30</BlockTime> b][B&
<NWAddr>//DEMOSERVER:9999</NWAddr> r&58d
<!-- Example address: //mydomain.acme.com:9999 --> !<D0Z
<Interoperate>Yes</Interoperate> 6p384
</T_DM_LOCAL_TDOMAIN> |
<T_DM_REMOTE_TDOMAIN AccessPoint="TDOM1"> OPj
<LocalAccessPoint>TDOM2</LocalAccessPoint> psQY/
<AccessPointId>TDOM1</AccessPointId> [
<Type>TDOMAIN</Type> vZ-
<NWAddr>//DEMOSERVER:9998</NWAddr> Q
<!-- Example address: //mydomain.acme.com:9998 --> 4]QCoZ
</T_DM_REMOTE_TDOMAIN> R!QI
<T_DM_EXPORT ResourceName="TOLOWER" AILhgP
LocalAccessPoint="TDOM2"> Qp
<EJBName>tuxedo.services.TOLOWERHome</EJBName> +F
</T_DM_EXPORT> 6cM^4?
<T_DM_IMPORT [\(Mx
ResourceName="TOUPPER" Ecv>
LocalAccessPoint="TDOM2" X:
RemoteAccessPointList="TDOM1"> f
<TranTime>600</TranTime> `Uo$
</T_DM_IMPORT> LS{
</BDMCONFIG> v0W2#L
</WTC_CONFIG> <AvNA
©WhiteLand -- Welcome WhiteLand  Yxc
(4)执行java weblogic.wtc.gwt.WTCValidateCF bdmconfig.xml监测xml是否正确。 ;4
(5)在D:\SIMPAPP下执行build命令,然后在D:\weblogic\wtc1.0\examples\simpserv下执行build命令 0N4|_m
(6)启动welogic  |K2g
(7)察看wtc_tolower.jar、wtc_toupper.jar是否deploy成功 axv
(8)建立一个WEBLOGIC StartUp Class: ]^<yx
classname为 weblogic.wtc.gwt.WTCStartup 参数为BDMCONFIG=D:\SIMPAPP\bdmconfig.xml,并设置其TARGET为EXAMPLESERVER !MM%!8
(9)建立一个WEBLOGIC ShutDown Class: Qq3?>v
classname为weblogic.wtc.gwt.WTCShutdown,并设置其TARGET为EXAMPLESERVER Gc~X!i
(10)重新启动weblogic,并注意WEBLOGIC的启动日志看StartUp Class启动过程是否成功,失败会报错,成功没有提示信息 +91(g*
如果失败没有检查config.xml中是否为 X<E'q2
<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"/> H5@
©WhiteLand -- Welcome WhiteLand  }w_bU
六、启动tuxedo =~
©WhiteLand -- Welcome WhiteLand  Ck8(5G
七、运行例子 'w(M,a
在d:/simpapp下执行run.cmd,这是WEBLOGIC 做CLIENT端调用Toupper ejb,由Toupper ejb调用TUXEDO的SERVICE:TOUPPER z
在d:/simpapp下执行run.cmd,这是TUXEDO做CLIENT端调用WEBLOGIC中的Tolower ejb, <o5*LD
©WhiteLand -- Welcome WhiteLand  F
八、如果是WEBLOGIC6.1 d6F]
TUXEDO的配置不变 \93O2
WEBLOGIC中从(2)开始配置.其中:DMCONFIG.XML中的,因为WEBLOGIC6.1中找不到wtc_config_1_0.dtd,可从WEBLOGIC6.1拷贝一个到WEBLOGIC6.1的安装目录下: &
如D:\WEBLOGIC6.1,并在DMCONFIG.XML指定它的路径 82{
<!DOCTYPE BDMCONFIG SYSTEM "file:D:\weblogic6.1\wtc_config_1_0.dtd"> I7]GE
©WhiteLand -- Welcome WhiteLand  Kb871
九、失败处理 ]/PL
如果失败,可设置weblogic.wtc.gwt.WTCStartup的跟踪选项,即把它的参数设置为: BDMCONFIG=D:\simpapp\bdmconfig.xml,TraceLevel=20000 am:+7U
并请查看WEBLOGIC,TUXEDO的日志.做相应的处理。