Java中使用Jolt访问Tuxedo服务 – Tomcat环境部署测试
Java中使用Jolt访问Tuxedo服务 – Tomcat环境部署测试
最近在学习基于Tuxedo的系统架构,网上讨论最多的,比较流行的3层架构是基于Weglogic+Tuxedo+DB的模式,关于这类模式的文章也比较多,可以参见链接:
http://blog.csdn.net/liwei_cmg/article/details/769150
一般来说,Java可用使用3种联机方式访问Tuxedo的服务:
1.WTC 用于Weblogic与Tuxedo的互访,可以实现双向的调用。
2.JOLT 用于Tomcat, Weblogic, Websphere 和其他应用服务器访问Tuxedo,为单向调用。
3.CORBA (网上有介绍,自己没实践过)
作为学习了解Java如何通过Jolt调用Tuxedo服务,以及如何使用Jolt的链接池技术,本文没有使用Weblogic作为应用服务器,而是直接在Tomcat应用服务器中配置部署了Html+ Servlet来调用Tuxedo的服务。
实现环境:
服务端: GUN/Linux 2.6.32 +Tuxedo 11gR1
应用服务器: Apache-tomcat-6.0.29 for Windows
开发工具: Myeclipse 8.5
实现步骤如下:
1)准备Tuxedo服务程序
2)修改配置ubbconfig
3)修改Jolt访问服务的jrepository文件
4)启动Tuxedo服务
5)创建Web project
6)准备Servlet 和 html程序
7)准备Jolt 连接池配置文件
8)配置web.xml文件
9)部署Web项目simpapp
10)Linux服务器防火墙设置
1. 准备Tuxedo服务程序
这里我们还是用examples中的simpserv.c程序,以及TOUPPER服务,比较容易。
//simpserv.c
#include
#include
#include /* TUXEDO Header File */
#include /* TUXEDO Header File */
#if defined(__STDC__) || defined(__cplusplus)
tpsvrinit(int argc, char *argv[])
#else
tpsvrinit(argc, argv)
int argc;
char **argv;
#endif
{
/* Some compilers warn if argc and argv aren't used. */
argc = argc;
argv = argv;
/* userlog writes to the central TUXEDO message log */
userlog("Welcome to the simple server 2");
return(0);
}
#ifdef __cplusplus
extern "C"
#endif
void
#if defined(__STDC__) || defined(__cplusplus)
TOUPPER(TPSVCINFO *rqst)
#else
TOUPPER(rqst)
TPSVCINFO *rqst;
#endif
{
int i;
for(i = 0; i < rqst->len-1; i++)
rqst->data[i] &#