Posted on 2010-05-28 13:54
断点 阅读(7423)
评论(1) 编辑 收藏 所属分类:
WebLogic
原因:在这两天的时间里,weblogic92把我很是郁闷了一把,原因是我本地的工程走业务流程没有问题,而到它上面去跑流程就是 处理失败!真正的问题就是2个jar包的有冲突,一样的class文件,名字分别为pcis_reinsure.jar、pcis_reinsure_open.jar 。在我提交svn的时候,把pcis_reinsure.jar删除了,把pcis_reinsure_open.jar 新增了,结果weblogic92的缓存中含有pcis_reinsure.jar、pcis_reinsure_open.jar 。
注:pcis_reinsure.jar 旧包、pcis_reinsure_open.jar 新包,其中一个类IRiskUnitService有方法divideRiskUnit,而另一个没有这个方法,所以老是提示
Caused by: java.lang.NoSuchMethodError: com..pcis.riskunit.service.IRiskUnitService.divideRiskUnit(L
com/isoftstone/pcis/policy/dm/bo/PolicyApplication;)V
解决:
在Tomcat中,我们知道%catalina_home%\work是存放缓存文件的地方,可以通过删除这里面的文件,让它重新编译,以便代码生效。
weblogic92的缓存文件存放在哪里呢?
weblogic92的发布项目缓存临时文件路径是
D:\bea\user_projects\domains\nonvhl_policy\servers\AdminServer\tmp\_WL_user\nonvhl_policy\4huf50\war\WEB-INF\lib,在此路径下把pcis_reinsure.jar删除就可以了。
注意:
1、要停服务后再删除缓存文件,运行时它已经加载到内存了。
2、缓存只加载新增的文件,对于工程删除的jar文件它不做删除。