Web应用服务器由Tomcat6转换为weblogic10环境出现的问题

  1. 最近的项目使用MyEclipse开发,Web应用服务器由Tomcat6转换为使用weblogic10环境。  

    WebLogic10安装,配置好用户domain。

    启动测试web应用服务没有问题,在部署好实际项目后,启动报错,错误信息为

  

Java代码  
  1. ClassNotFoundException: org.hibernate.hql.ast.HqlToken  

 

    找到解决方法,将工程里的antlr.jar拷贝到weblogic的wlserver/server/lib文件夹下面,在domains/base_domain/bin里找到startWebLogic.cmd文件,找到

Java代码  
  1. set CLASSPATH=%SAVE_CLASSPATH%  

    

   在下面增加:

  

Java代码  
  1. @REM hibernate3  
  2. set PRE_CLASSPATH=%WL_HOME%/server/lib/antlr-2.7.6.jar  
  3. set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH%   

 

    在启动weblogic服务,服务正常启动,错误被排除。

    网上许多在hibernate.properties中增加:

   

Java代码  
  1. hibernate.query.factory_class属性为org.hibernate.hql.classic.ClassicQueryTranslatorFactory  

 

   方法,在执行普通的hql查询没有问题,但无法执行hql批量更新语句。

 

    在配置完成后,从myelicpse中启动weblogic服务,仍然报出

  

Java代码  
  1. ClassNotFoundException: org.hibernate.hql.ast.HqlToken  

   错误,显然修改未被myeclipse识别,启动不是从cmd脚本装载执行,为eclipse行为。

  

    解决方法:

  

Java代码  
  1. widows->preferences->MyEclipse->Services->WebLogic->WebLogic10.x->Path  

    在Prepend to classpath中,增加选项:

   

Java代码  
  1. antlr.jar  

    具体设置与antlr.jar的文件路径相关,即默认此jar的优先级高于weblogic自身的实现jar。

    在此启动,从eclipse启动,正常。

你可能感兴趣的:(java,tomcat,Web,应用服务器,weblogic,MyEclipse)