Spring mvc 在Websphere中配置多个WAR和类加载

Spring mvc 在Websphere中配置多个WAR和类加载,spring-mvc,soap,maven-2,jackson,websphere-8,Spring Mvc,Soap,Maven 2,Jackson,Websphere 8,我在尝试将一个项目部署到Websphere时遇到了一个非常具体的问题,该项目在一个EAR中打包了多个WAR。第一场战争是基于SOAP的web服务,而第二场战争是基于REST的服务。除了共享一个公共构建pom.xml之外,这两个项目都不相互依赖 我遇到的问题是使用REST服务中的Jackson库来处理JSON对象。无论出于何种原因,jacksonwebsphere默认使用的版本都会抛出一个NoSuchMethod错误。这显然是一个常见问题,将应用程序切换为使用父类装入器可以解决此问题,然后REST

我在尝试将一个项目部署到Websphere时遇到了一个非常具体的问题,该项目在一个EAR中打包了多个WAR。第一场战争是基于SOAP的web服务,而第二场战争是基于REST的服务。除了共享一个公共构建pom.xml之外,这两个项目都不相互依赖

我遇到的问题是使用REST服务中的Jackson库来处理JSON对象。无论出于何种原因,jacksonwebsphere默认使用的版本都会抛出一个
NoSuchMethod
错误。这显然是一个常见问题,将应用程序切换为使用父类装入器可以解决此问题,然后REST服务可以正常工作

不幸的是,当使用父类最后一个类装入器时,SOAP服务不起作用,在尝试装入一个bean时抛出错误。在过去的几天里,我一直在努力让这两个应用程序运行良好,但尚未成功

解决此问题的理想方法是让REST服务(尤其是Jackson)使用父级一级加载程序。一个不太理想的解决方案是改变SOAP服务以使用父级last loader。不可行的解决方案包括将应用程序拆分为单独的包,或者使用Jackson以外的其他方法来处理JSON对象


由于我公司的限制,我只能使用1.9.13及以下版本的Jackson(目前使用1.9.9)和Websphere Application Server v 8.0.0.8

您是否尝试在每个web模块级别上设置类加载器,而不是在应用程序级别上更改它?@Gas是的,我已尝试为这两个模块设置类加载器,以及将EAR类加载器同时设置为这两种设置。这些配置都不起作用。将Jackson用作共享库(不需要父库)