我的项目是使用:weblgoic9.2+hibernate3.2开发的,开发结束后,和我说要把WebLogic换成WebLogic10.3,安装好后
抛了这样一个错误,到网上去查说是:在hibernate3中需要用到antlr,然而这个包在weblogic.jar中已经包含了antrl类库,就会产生一些类加载的错误,无法找到在war或者ear中的hibernate3.jar。
出现这个错误之后,antlr会调用System.exit(),这样weblogic就会中止服务。
抛出的错误:
org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundExcepti
on: org.hibernate.hql.ast.HqlToken [SELECT ztId,ztCname FROM AzyZtEntity WHERE z
tEflg=0]; nested exception is org.hibernate.QueryException: ClassNotFoundExcepti
on: org.hibernate.hql.ast.HqlToken [SELECT ztId,ztCname FROM AzyZtEntity WHERE z
tEflg=0]
抛了这样一个错误,到网上去查说是:在hibernate3中需要用到antlr,然而这个包在weblogic.jar中已经包含了antrl类库,就会产生一些类加载的错误,无法找到在war或者ear中的hibernate3.jar。
出现这个错误之后,antlr会调用System.exit(),这样weblogic就会中止服务。
抛出的错误:
org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundExcepti
on: org.hibernate.hql.ast.HqlToken [SELECT ztId,ztCname FROM AzyZtEntity WHERE z
tEflg=0]; nested exception is org.hibernate.QueryException: ClassNotFoundExcepti
on: org.hibernate.hql.ast.HqlToken [SELECT ztId,ztCname FROM AzyZtEntity WHERE z
tEflg=0]
但是部分功能会有问题,譬如
但本系在批量删除和更新会有问题,本系统不采用此处可不修改
2.将antlr-2.7.6.jar拷贝到bea\wlserver_10.3\server\lib目录下且放置在weblogic.jar的前面,然后修改user_projects\domains\base_domain\bin目录下的startWebLogic.cmd
在set CLASSPATH之前加上下面一句:
set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.5H3.jar;
在set CLASSPATH之后加上下面一句:
set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH% 问题随即解决。
这种方法试过了,只是支持查询,更新和删除就会报错