用MyEclipse 和 tomcat 开发出来的项目在tomcat 上运行的很好,但是把war包部署到weblogic server上之后却怎么也连接不上数据库,这是问题。经历了一番查找和研究之后发现主要原因有两个:
1, weblogic10与hibernate3中antlr.jar包冲突问题
说明:
我用的weblogic 是10.3.6 版本,操作系统是win7 64位,JDK是jdk-6u45-windows-x64版本;DB2 8.2;
解决办法:
在C:\myhome\wls\wlserver_10.3\server\lib下加antlr-2.7.6.jar,hibernate-jpa-2.0-api-1.0.0.Final.jar,commons-lang.jar;在C:\myhome\wls\user_projects\domains\base_domain\bin下面找到startWebLogic.cmd,用编辑模式打开startWebLogic.cmd,在set SAVE_JAVA_OPTIONS= 与set SAVE_CLASSPATH=之间大概在100行加:
set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.6.jar;%WL_HOME%\server\lib\hibernate-jpa-2.0-api-1.0.0.Final.jar;%WL_HOME%\server\lib\commons-lang.jar
set CLASSPATH=%PRE_CLASSPATH%;%SAVE_CLASSPATH%
参考帖子:
http://hi.baidu.com/renliangli/item/1916b337f7758c5880f1a72c
2.缺少DB2jar包,
在C:\myhome\wls\user_projects\domains\base_domain\lib加jar:db2java.jar;db2jcc.jar, db2jcc_javax.jar, db2jcc_license_cisuz.jar, db2jcc_license_cu.jar.加过之后,也要像上面一样在C:\myhome\wls\user_projects\domains\base_domain\bin下面找到startWebLogic.cmd,用编辑模式打开startWebLogic.cmd,在上面的PRE_CLASSPATH=内容后面继续添加:%DOMAIN_HOME%\lib\db2java.jar;%DOMAIN_HOME%\lib\db2jcc.jar;%DOMAIN_HOME%\lib\db2jcc_javax.jar;%DOMAIN_HOME%\lib\db2jcc_license_cisuz.jar;%DOMAIN_HOME%\lib\db2jcc_license_cu.jar;
最后大概这样:
set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.6.jar;%WL_HOME%\server\lib\hibernate-jpa-2.0-api-1.0.1.Final.jar;%WL_HOME%\server\lib\commons-lang-2.4.jar;%DOMAIN_HOME%\lib\db2java.jar;%DOMAIN_HOME%\lib\db2jcc.jar;%DOMAIN_HOME%\lib\db2jcc_javax.jar;%DOMAIN_HOME%\lib\db2jcc_license_cisuz.jar;%DOMAIN_HOME%\lib\db2jcc_license_cu.jar;
set CLASSPATH=%PRE_CLASSPATH%;%SAVE_CLASSPATH%;