在Tomcat中运行Weblogic 8的Web项目
前言:
Weblogic是BEA公司的主打产品,也是全球领先的企业级应用服务器。在Weblogic 8中提供了很多新的特性。比如它提出了全新的Page Flow的概念和Netui页面元素标签库,以及还有对于Java来说是全新的Java Control的概念,此外还有能够方便处理XML的XMLBean。种种这些技术都是使程序员能够从繁重且单调的编程中独立出来而专注于对业务以及整体的设计。
Java最初的设计思想就是能够使应用程序独立于系统以及平台,而且良好可移植性也是Java最大的优点之一。但是由于在Weblogic 8种采用了很多独有的新的技术,因此基于Weblogic 8所开发的系统也将更多的依赖于Weblogic本身,无疑这将使开发出来的应用在平台的可移植性方面大大降低。
可能因为种种原因你想把你的应用程序移植到Tomcat上,或者可能你只是被Weblogic 8中的一些新特性所吸引,只是想开发基于JPF和Netui的这样一套应用程序,而最终想运行在Tomcat上。又或是你觉得在开发时Weblogic的效率实在是太低,你想在开发时使用Tomcat来提高开发效率(本人就是出于此目的)而把应用运行在Tomcat上,等最终调试完毕才放回Weblogic来进行测试。
不管出于什么目的,幸好,我们还算幸运,BEA公司提供了这样一套软件来支持把在Workshop中开发的Web应用移植到Tomcat中。这套软件就是Page Flow Portability Kit (http://dev2dev.bea.com/technologies/standards/standards_pageflow_portability_index.jsp)。
要运行这套软件:
1. 你要先下载Page Flow Portability for Apache Tomcat 4.x下来后解压缩,虽然标明的是for Apache Tomcat 4.x,但经实验在Tomcat 5.X也是可以运行的。
2. 把bea-pageflow-tomcat-1.0中的lib/server/netui-tomcat-server-4x.jar拷贝到{tomcat.home}\server\lib
把bea-pageflow-tomcat-1.0中的lib/common/netui-tomcat-common-4x.jar拷贝到 {tomcat.home}\common\lib
把bea-pageflow-tomcat-1.0中的lib/common/log4j.jar拷贝到 {tomcat.home}\common\lib
3. 拷贝你的Weblogic应用到{tomcat.home}\webapps下
4. 修改{tomcat.home}\conf\tomcat-users.xml
添加
<role rolename="manager"/>
<user username="manager" password=" manager" roles="manager"/>
5. 删掉Weblogic项目中的/WEB-INF/lib/netui-wl.jar
6. 直接把bea-pageflow-tomcat-1.0中webapp下的web.xml拷贝到Weblogic项目的/WEB-INF中,或者删掉Weblogic项目中web.xml中的
com.bea.wlw.runtime.core.servlet.WebappContextListener
7. 修改bea-pageflow-tomcat-1.0\pageflow-compiler\common.properties中的变量值,在build.class.path中添加要用到的lib。一般会添加Weblogic.jar
8. 在bea-pageflow-tomcat-1.0\pageflow-compiler目录下运行
ant -f tomcat-webapp-build.xml (ant必须是1.6以上版本的)
Build通过后,就可以在Tomcat中运行你的Weblogic应用程序了。