最近,由于要统一整个缴费平台,加上需要TUXEDO中间件,我们WEB服务器要从Tomcat移植到WebLogic上.
安装完成后部署出现的几个问题:
1、ClassNotFoundException: org.hibernate.hql.ast.HqlToken
解决方法:
将工程里的antlr.jar拷贝到weblogic的wlserver/server/lib文件夹下面,在domains/base_domain/bin里找到startWebLogic.cmd文件,找到
在下面增加:
再启动weblogic服务,如果还报同样错误,显然修改未被myeclipse识别,启动不是从cmd脚本装载执行,为eclipse行为。
解决方法:
widows->preferences->MyEclipse->Services->WebLogic->WebLogic10.x->Path
在Prepend to classpath中,增加选项:antlr.jar
具体设置与antlr.jar的文件路径相关,即默认此jar的优先级高于weblogic自身的实现jar。
在此启动,从eclipse启动,正常。
2、在MyEclipse部署完成后,到http://localhost:7001/console部署的时候,出现An error occurred during activation of changes, please see the log for details.
[Deployer:149189]Attempt to operate ''activate'' on null BasicDeploymentMBean for deployment MysqlDataSource. Operation can not be performed until server is restarted
原因:
WebLogic10需要的JDK版本为5或者其自带的1.6
修改方法:
找到Eclipse中配置服务器的位置(Windows--〉reference-->MyEclipses-->Server或者Application Server-->WebLogic-->WebLogic10-->JDK),点击下拉列表右边的Add按钮,添加JDK5(可以使用WebLogic自带的JDK)即可。
另:weblogic各个版本对JDK和Spring的支持度
首先是JDK支持问题, Tomcat 5.0 开始都支持 Java 5和 Java EE 5, 但 WebLogic 8 只支持 JDK 1.4, J2EE 1.3; WebLogic 9 之后才能支持 Java 5, J2EE 1.4; WebLogic 10 支持Java 5, Java EE 5; WebLogic 11 支持 Java 6, Java EE 5.
WebLogic 一直大力支持开源项目, 认证的Spring 版本如下:
Spring 1.2.0 WebLogic 8
Spring 1.2.5 WebLogic 9
Spring 2.0.1 WebLogic 10
Spring 2.5 WebLogic 11
3、另外还有一些诸如ClassNotFoundException org.hibernate.FlushMode或者找不到sessionFactory这个bean
等等,具体参考:http://kenshin54.javaeye.com/blog/786797
Reference:http://liuwei1981.javaeye.com/ 皇马啸西风的技术博客