最近写了一个搜索程序,部署在tomcat,resin上相当nice,然而部署在weblogic上却碰到不少问题,开始部署在weblogic8.16上发现jstl1.2无法正常工作,后来换weblogic9.22主要基于以下原因:
由于weblogic81.6只支持jdk1.4,并且只支持jsp1.1,servlet2.3,jstl1.0(并且还要在web.xml进行配置),而weblogic9.22支持jsp2.0和servlet2.4以上以及jstl1.2(不需要在web.xml里进行配置),并且向下兼容jsp1.1,jstl1.0,serlvet2.3,为了使用高版本的jdk和高版本的jstl2.0等以提高性能,故采用之。
以下是我在weblogic9.22上部署search.war这个java ee应用的一些心得:
1.要首先在windows环境充分测试程序后,方可在linux上部署,windows下调试weblogic9.22应用采用eclipse3.3+myeclipse6.0。
2.在windows下测试weblogic应用应该将weblogic安装为其develepment mode(开发模式),这样部署应用可以采用其自动部署特性,将打包的程序search.war直接扔到C:\bea\user_projects\domains\base_domain\autodeploy启动domain就可以部署应用。
3.如果采用散目录部署,将search拷贝到autodeploy目录,启动domain即可,这种情况下,由于是开发模式,weblogic还支持热部署,此时你扔一个编译过的修改的类到你的应用下,在不启动应用和domain的情况下,类的修改是可以即时生效的,这样便于开发阶段的测试。
4.Linux环境(生产环境),应该将weblogic安装为production mode模式,此时,必须手动部署一个应用,不能采用3里提到的直接拷贝应用到autodeploy目录。
5.在使用myeclipse6.0测试weblogic程序时,要注意保持jdk版本一致,否则将产生一个异常,并且保证部署也使用测试的那个jdk版本。
6.如果在应用中采用了spring等框架可能产生log4j的版本冲突,解决方案见search/WEB-INF/web.xml里的注释。
7.一个可以在weblogic上部署的java ee应用必须包含一个名为weblogic.xml的文件,其内如如下: <?xml version="1.0" encoding="UTF-8"?> <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"> <jsp-descriptor> <page-check-seconds>1</page-check-seconds> <verbose>true</verbose> </jsp-descriptor> <context-root>/</context-root> </weblogic-web-app>
默认状态下部署应用search到weblogic后,访问url为http://localhost:7001/search,如果想将search作为根目录发布的话,需要在weblogic.xml里添加红色内容,如上所示,这样就可以http://localhost:7001/来访问search应用了。
8.Weblogic9.22增加内存的方法为: 修改:/usr/local/bea2/user_projects/domains/base_domain/bin目录下的setDomainEnv.sh
将其中的MEM_ARGS="-Xms500m -Xmx1000m"进行修改,对应的MaxPermSize=1000m也进行修改。
9.使用新版本的trsbean的方法: 修改/usr/local/bea2/user_projects/domains/base_domain/bin下的startWebLogic.sh,在其最前面增加如下代码 LD_LIBRARY_PATH=/usr/local/bea2/jdk150_04/lib export LD_LIBRARY_PATH 10.安装的weblogic9.22启动采用weblogic922用户
11.Weblogic9.22设置启动端口: 修改/usr/local/bea2/user_projects/domains/base_domain/config下的config.xml中的 </listen-address/> 为: <listen-port>8090</listen-port> <listen-address>61.135.142.202</listen-address>
12.在打包的时候要使用java ee5的jar进行打包,不能是用tomcat的那些jar包。
一下是web.xml与build.xml: UploadFiles/2008-6/624156809.rar |