您的位置:首页 > 产品设计 > 产品经理

WebLogic 10.3下部署JBPM 4.4遇到过的问题及解决方法

2011-12-29 10:57 736 查看
1.org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundExcepti on: org.hibernate.hql.ast.HqlToken 

错误原因: 在hibernate3中需要用到antlr,然而这个包在weblogic.jar中已经包含了antrl类库,就会产生一些类加载的错误,无法找到在war或者ear中的hibernate3.jar。 出现这个错误之后,antlr会调用System.exit(),这样weblogic就会中止服务。

解决步骤:

步骤1:在WEB-INF目录下建一个weblogic.xml文件,内容如下:

                       

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>


步骤2: 将antlr-2.7.6.jar拷贝到wlserver_10.3/server/lib目录下

步骤3:修改weblogic的启动文件

Windows系统

1.)     修改weblogic domain/bin下的startWebLogic.cmd:

2.)     找到set CLASSPATH=%SAVE_CLASSPATH%

3.)     在该句之前加上:set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.6.jar

4.)     在set CLASSPATH=%SAVE_CLASSPATH%之后加上:set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH%

UNIX系统

1.)     修改weblogic domain/bin下的startWebLogic.sh

2.)     找到CLASSPATH="${SAVE_CLASSPATH}"

3.)     在该句之前加上:PRE_CLASSPATH="${WL_HOME}/server/lib/antlr-2.7.6.jar"

4.)     在CLASSPATH="${SAVE_CLASSPATH}"之后加上:CLASSPATH="${PRE_CLASSPATH}${CLASSPATH}"
步骤4:经过以上更改后,如果还是出现Hibernate错误,请在hibernate的配置文件中加上 

   <prop key="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</prop>

2.java.lang.NoSuchMethodError: org.w3c.dom.Element.getTextContent()Ljava/lang/String

造成这个异常的原因是web工程文件中的xml解析文件和weblogic自带的xml解析文件有冲突,删掉web工程文件中的xercesImpl-2.6.2.jar、xmlParserAPIs-2.6.2.jar、xml-apis-1.0.b2.jar这三个jar包
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息