最近在是用weblogic部署项目的时候遇到了一个问题:
weblogic.application.ModuleException:[HTTp:101216]servlet::"paramServlet"failed to preload on startup in web application.org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken
这个异常貌似是程序中的使用hibernate错误,其实是jar的问题,首先我们可以在WEB-INF目录下添加weblogic.xml文件,文件内容如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<Container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
另外一个就是查看部署包(war包)中的WEB-INF下的lib包中是否含有antlr的jar包,有就删除,weblogic.xml中的配置就是用使用weblogic自带的antlr jar包
后面自己的应用部署的时候也是报这个错误,但是antlr.2.7.6.jar包已经删除了,之后加上那个包了就好了