最近学习Tuxedo,安装的是Tuxedo8.1,安装完成后需要将lic.txt拷到udataobj目录下,首先将samples/atmi/simpapp目录拷到
新建的apps下,当然就在原来的目录下也行。首先要设置环境变量,需要修改setenv.cmd,内容如下:
rem (c) 2003 BEA Systems, Inc. All Rights Reserved.
rem Copyright (c) 2000 BEA Systems, Inc.
rem All Rights Reserved
rem THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF
rem BEA Systems, Inc.
rem The copyright notice above does not evidence any
rem actual or intended publication of such source code.
rem Copyright (c) 2000 BEA Systems, Inc.
rem All rights reserved
rem ident "@(#) apps/simpapp/setenv.cmd $Revision: 1.5 $"
set TUXDIR=E:\Oracle\Tuxedo\tuxedo8.1
set APPDIR=E:\Oracle\Tuxedo\tuxedo8.1\apps
set PATH=%TUXDIR%\bin;%APPDIR%;%PATH%
set TUXCONFIG=%APPDIR%\tuxconfig
VCVARS32.BAT
其中TUXDIR是tuxedo的安装目录,APPDIR是应用程序存放目录,TUXCONFIG是生成的二进制配置文件目录。
由于需要c/c++编译环境,需要下载vc++编译器,并配置环境变量,VCVARS32.bat为VC++的环境变量批处理文件。
然后需要更改配置文件ubbsimple,内容如下:
# (c) 2003 BEA Systems, Inc. All Rights Reserved.
#ident "@(#) samples/atmi/simpapp/ubbsimple $Revision: 1.5 $"
#Skeleton UBBCONFIG file for the TUXEDO Simple Application.
#Replace the <bracketed> items with the appropriate values.
*RESOURCES
IPCKEY 222222
#Example:
#IPCKEY 123456
DOMAINID simpapp
MASTER simple
MAXACCESSERS 10
MAXSERVERS 5
MAXSERVICES 10
MODEL SHM
LDBAL N
*MACHINES
DEFAULT:
APPDIR="E:\Oracle\Tuxedo\tuxedo8.1\apps"
TUXCONFIG="E:\Oracle\Tuxedo\tuxedo8.1\apps\tuxconfig"
TUXDIR="E:\Oracle\Tuxedo\tuxedo8.1"
#Example:
# APPDIR="/home/me/simpapp"
# TUXCONFIG="/home/me/simpapp/tuxconfig"
# TUXDIR="/usr/tuxedo"
LANDING_PC LMID=simple
#Example:
#beatux LMID=simple
*GROUPS
GROUP1
LMID=simple GRPNO=1 OPENINFO=NONE
*SERVERS
DEFAULT:
CLOPT="-A"
simpserv SRVGRP=GROUP1 SRVID=1
*SERVICES
TOUPPER
需要设置IPCKEY,同时将APPDIR,TUXCONFIG,TUXDIR设置为自己对应的目录,同时<Machine-name>为的计算机名设置为大写,
windows下使用echo %computername% 显示机器名。
cmd窗口操作如下:首先cd 到应用目录,也可以直接到目录的地址栏敲cmd,跳转到目录下,运行setenv.cmd
然后使用tmloadcf -y ubbsimple命令编译ubb配置文件,如果出现
CMDTUX_CAT:866: ERROR: tmloadcf: Severe error found. Stop syntax checking.
可能是IPCKEY忘记更改。
出现NLS:4: Cannot open message catalog TMADMIN_CAT,该错误是字符集错误,可以在setenv中
加上set NLSPATH=E:\Oracle\Tuxedo\tuxedo8.1\locale\C
如果编译成功,会在指定目录下生成tuxconfig的二进制文件
编译客户端程序
$buildclient -o simpcl -f simpcl.c
编译服务器程序
$buildserver -o simpserv -f simpserv.c -s TOUPPER
此处生成的可执行文件名要与ubbsimple中的相匹配
启动tuxedo应用系统
$tmboot -y
此时会启动两个进程
$simpcl hello
显示Returned string is: HELLO表示成功
在运行完上面命令后,客户端的小写字符串被服务端程序转换为大写
关闭tuxedo应用
$tmshutdown -y