您的位置:首页 > 其它

Websphere8.5自带jar包与应用jar包冲突的解决办法

2016-04-20 14:26 253 查看
原文:http://wenku.baidu.com/link?url=4ZE6tusyNQX-3wAFPr6qNgSy8nyhgyrSglnEwTAdGF5qtN20KMSAwN-xX2CMd4U-npnVjS4Ui7IQL9JrwjnBjn8Lwt8PZcNuYF9-tJCkPmy

在我们的项目需要使用到axis2的工具包来完成远程webservice接口的调用,在websphere8.5中部署应用后进行测试,应用调用接口总是失败,最后找到根本原因为我们所使用的axis2的包,websphere8.5本身自带,而且默认情况下,容器会优先加载自带的jar包,它自带的版本与我们所使用的版本又不一致,所以调用时会失败。

在查询解决办法时,我们尝试修改websphere中我们应用的类加载方式,选择父类最后加载,但是这种方法仍然无法改变websphere8.5优先加载自带的jar包。

我们也尝试了删除websphere8.5自带jar包,但是删除后,websphere8.5无法正常启动。

最后终于通过设置共享库的方法解决了此问题。具体步骤如下:

1) 应用服务器上新建共享库的目录(如果是集群部署,务必保证多个节点共享库的目录路径一致),将需要优先加载的jar包拷贝至该目录下。

2) 在websphere8.5管理控制台中新建共享库:



注意:这里如果是集群部署,作用域应选为集群。

点击“新建”按钮后,输入共享库名称,这个自己随便定义,但是类路径需要填写之前所建的共享库目录。

上图的选项也需要勾选。点击“应用”后保存。

3) 在应用中引入共享库:



点击“共享库引用”。



选择应用程序和模块后,点击“引用共享库”。



将已经建好的共享库移至已选列表中,点击“确定”后保存。

4) 重启应用服务器。之后应用启动时就会优先加载共享库中的jar包了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: