`
猪才怪
  • 浏览: 23930 次
  • 性别: Icon_minigender_1
  • 来自: 济南
文章分类
社区版块
存档分类
最新评论

weblogic10与hibernate3中antlr.jar包冲突问题解决

阅读更多
环境配置:weblogic 10.3 spring hibernate 3.3.0

问题描述:以上配置的项目在tomcat下运行没有问题,发布到weblogic后,启动时也是没有问题的,但不能执行数据库操作,一旦执行数据库操作,便会有异常:
org.springframework.dao.InvalidDataAccessApiUsageException: org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken 


以上问题的原因是WebLogic自身会使用Antlr去分析EJBQL,与HIBERNATE中所需要的ANTLR.JAR冲突。

解决以上问题的办法有两种(其实不止两种,这里只写出我试验成功吧,分别对应在myeclipse中启动weblogic与手工执行启动命令脚本启动weblogic),原理都是使JVM首先加载web工程中的antlr.jar,而不是weblogic自带的较低版本的jar.
1. MyEclipse中启动做配置

在MyEclipse中启动Weblogic时可以轻易的解决这个问题:在MyEclipse的首先项中,配置服务器,打开对应的weblogic配置,展开path,在prepend一栏中,将web工程lib下的antlr_xx_xx.jar加入,点击确定,启动,ok.

2. 修改weblogic启动命令

首先说明按照这个方法做出修改后,在myeclipse中启动时是无效的,也就是这个做法不能替代1方法,当然1方法也不能替代2方法。此方法只适用于使用cmd或sh文件启动weblogic.
将antlr.jar复制到domin_home/lib下。该lib目录下会有一个说明文档,大概意思是目录下的jar会被自动添加到server的启动classpath的后面,那么还需要修改startWeblogic.cmd或.sh来将antlr.jar加入到classPath的最前面。

编辑domain_home/bin/startWebLogic.cmd文件,在
set CLASSPATH=%SAVE_CLASSPATH%

后加上两行代码
set PRE_CLASSPATH=%DOMAIN_HOME%\lib\antlr.jar

set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH%


保存,双击startWebLogic.cmd启动,OK

0
2
分享到:
评论
2 楼 猪才怪 2011-06-22  
zhangli123123 写道
你确定这样行吗?我试了这两种方式,这两种方式都不行

我试过才发的。
1 楼 zhangli123123 2011-03-22  
你确定这样行吗?我试了这两种方式,这两种方式都不行

相关推荐

    Hibernate的Antlr在Weblogic中产生Jar冲突的解决办法

    ### Hibernate的Antlr在Weblogic中产生Jar冲突的解决办法 #### 背景与问题描述 在使用Hibernate框架进行Java应用开发时,特别是在Weblogic服务器环境下部署应用程序时,可能会遇到一个常见问题:由于不同版本的...

    weblogic10 与hibernate冲突解决方案 linux windows环境全解

    weblogic10 与hibernate冲突解决方案 错误如下:org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken linux windows 环境解决方案全解 Linux 启动脚本添加如下: export USER_...

    weblogic12 下 org.hibernate.hql.ast.HqlToken

    通过以上步骤,可以有效地解决WebLogic 12环境中因Hibernate版本不兼容而导致的`org.hibernate.hql.ast.HqlToken`类冲突问题。这种方法不仅适用于WebLogic 12,对于其他版本的WebLogic服务器同样适用,关键在于正确...

    antlr.jar-2.7.6

    总结来说,ANTLR.jar-2.7.6是ANTLR库的一个版本,它在Java开发中,特别是在Hibernate3这样的ORM框架中,作为解析和生成SQL查询的关键组件。通过使用ANTLR,开发者可以更高效地处理语言和配置文件解析,提升项目开发...

    struts2 sping hibernate 部署到weblogic8.1.6上所需要jar包

    在部署Struts2、Spring与Hibernate到WebLogic 8.1.6服务器的过程中,经常会遇到兼容性问题。本文将详细阐述所需JAR包的具体情况及其配置步骤,帮助开发者顺利完成部署。 ### Struts2、Spring与Hibernate部署至...

    antlr-2.7.6rc1.jar

    解决weblogic抛出的ClassNotFoundException: org.hibernate.hql.ast.HqlToken异常

    Linux 下整合 weblogic12c jsf1.2 Hibernate3

    在整合 Hibernate 3 时,可能会遇到与 WebLogic 12c 兼容性问题。具体来说,当使用 Hibernate 3 时,可能会遇到与 `org.hibernate.hql.ast.HqlToken` 相关的异常。这是因为 WebLogic 12c 使用了与 Hibernate 3 不...

    weblogic与hibernate

    使用的Hibernate是3.0之后的版本,而从3.0开始就采用了新的基于ANTLR的查询翻译器,在WebLogic中使用的是antlr2.6.1.jar,无法满足该要求,需要从新版本的Hibernate中提取该jar并添加到WebLogic的Classpath中。

    sunone8.1到weblogic10.3转移配置

    2. **ANTLR依赖冲突**:Hibernate 3.x使用ANTLR作为其HQL和SQL查询的解析器,但WebLogic自带的ANTLR版本可能与Hibernate所需的版本不同,导致类加载失败。 #### 四、解决方案 为了解决上述问题,我们需要确保...

    SSH项目部署在window和linux下的Weblogic上出现 ClassNotFound异常解决办法

    经过初步排查发现,这一问题可能与Hibernate框架中所依赖的`antlr.jar`文件与WebLogic自带的jar包存在冲突有关。虽然在网上搜索了许多资料,但并未找到可行的解决方案。最终通过一份由前同事提供的资料,明确了问题...

    Windows 下整合 weblogic10 jsf1.2 hibernate3

    - **关于 Hibernate 3 的依赖管理**:在 WebLogic 10.3 的环境中,需要特别注意 Antlr 的版本及其与其他库的兼容性问题。 总结来说,在 Windows 环境下整合 WebLogic 10、JSF 1.2 和 Hibernate 3 需要注意的技术...

    Extjs3.2+struts2.0+spring2.5+hibernate3.5+weblogic10+oracle10g含全包5

    proxool_cofig.xml为连接池配置 此项目可做基础项目开发原型方便,启动此项目在weblogic10中会有antlr-2.7.6rc1.jar此包的异常请配置其先加载并将次包考入 bea\wlserver_10.0\server\lib目录下,再将bea\user_projects...

    Tomcate移植到webLogic问题及解决方法

    #### Hibernate3与WebLogic冲突 **问题描述:** 当将包含Hibernate3组件的应用程序(WAR包)从Tomcat移植到WebLogic时,可能会出现以下异常: ``` org.springframework.orm.hibernate3.HibernateQueryException:...

    在 Weblogic 8.1上配置 Hibernate 3.0

    - **问题与解决**:Weblogic服务器的JNDI与Hibernate之间存在兼容性问题。可以通过手动绑定`SessionFactory`到JNDI中来解决。 - **JTA配置**:配置Hibernate使用JTA(Java Transaction API),在`hibernate.cfg.xml...

    weblogic10.3 使用

    ### WebLogic 10.3 使用详解 #### 一、WebLogic 10.3 安装步骤 在正式开始WebLogic 10.3 的使用...通过以上步骤,可以有效解决Spring + Hibernate3在WebLogic 10.3环境中出现的异常问题,确保开发工作的顺利进行。

    WebLogic的安装与使用

    3. **解决 Hibernate 与 WebLogic 集成的问题**: - 当使用基于 Hibernate 的项目时,可能会遇到与 WebLogic 集成时的问题。 - 例如:在解释 HQL 时出现 `ClassNotFoundException` 异常。 - 解决方案包括: - 将...

    struts+spring+hibernate3+webligic812环境配置备忘录

    Hibernate与ANTLR冲突问题 - **异常现象**:在运行过程中可能会遇到`ClassNotFoundException`,指向`org.hibernate.hql.ast.HqlTokenizer`类未找到的问题,这通常是由于WebLogic服务器未能识别Hibernate依赖的...

    java技术文档,非常实用

    Java 技术文档中涉及到的关键知识点是 Hibernate 3.0 集成与配置在 WebLogic 服务器上的过程,以及不同软硬件报价方案的选择。以下是详细的解析: **Hibernate 3.0 配置在 WebLogic 10.x 中** 1. **ANTLR 替换**:...

Global site tag (gtag.js) - Google Analytics