由于业务需要,公司装平台从Tomcat上迁移至WebLogic上
在Windows下测试平台为WebLogic11g
在AIX下测试平台为WebLogic10.3.4
目前两种平台下均遇到如题的错误。其实就是antlr.2.7.6这个包与WebLogic自有jar包冲突,在MyEclipse中配置服务器的时候在Path里面设置下就好用,可惜我们需要发布出去,不可以这样式
在网上查过3种解决方法,均不好用,期待其他解决方式:
第一种方法在startWebLogic.sh或startWebLogic.cmd里设置环境变量,无效,不知道网上的那些贴子都是怎么试出来的,其中一篇贴子说要删除WebLogic.xml,也删除了,结果一样报这个问题。
第二种方法说在WebLogic.xml里更改优先加载项目lib,但很不幸,我们的项目中还有与WebLogic冲突的jar包,好像是由于xmlapi这个包冲突,所以也无法使用。
第三种方法说需要更改HQL的一种链接方式,不行,我们的平台中有很多用到批量增删的地方。所以至今未找到解决方法,希望解决过此问题的各位同仁帮忙,谢谢。如果只是在网上转来一些贴子我想就不用了,多多少少也查了4天了,也咨询过不少人,但……

解决方案 »

  1.   

    前段时间正好遇到过这个问题.
    我的解决方法是:
    打开startWebLogic.cmd文件,在set CLASSPATH=...的路径设置最前面加上你的存放antlr-2.7.5H3.jar(hibernate中的包)
    的绝对路径;
      

  2.   

    我以前也碰到过这个问题,与WebLogic冲突的jar包,可以尝试将发布包里面的相应jar包删除了,发布后也不会报错,相应类由weblogic里面的包实现了
      

  3.   

    weblogic需要使用org.hibernate.hql.ast.HqlToken类时用到了错误的antlr-2.7.5H3.jar不会有问题吗?
      

  4.   

    如果业务逻辑和weblogic框架各自的classpath可以彼此独立就ok了