2014-10-28 174 views
0

我有一个webapp需要部署到Websphere 8.5,(它在tomcat 7中工作正常)。这个应用程序调用另一个应用程序的REST web服务,并使用HttpClient。当我启动应用程序,我得到以下错误:Websphere HttpClient java.lang.NoSuchMethodError:org/apache/http/conn/ssl/SSLSocketFactory。 <init>

Caused by: java.lang.NoSuchMethodError: org/apache/http/conn/ssl/SSLSocketFactory.<init>(Ljavax/net/ssl/SSLContext;Lorg/apache/http/conn/ssl/X509HostnameVerifier;)V 
     at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.initDefaultEngine(ResteasyClientBuilder.java:418) 
     at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.build(ResteasyClientBuilder.java:333) 
     at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.build(ResteasyClientBuilder.java:49) 
     at javax.ws.rs.client.ClientBuilder.newClient(ClientBuilder.java:114) 
     at com.qmino.matrix.calculation.engine.EngineInstance.<init>(EngineInstance.java:23) 
     at com.qmino.matrix.calculation.engine.CalculationEngine.<init>(CalculationEngine.java:61) 
     at com.qmino.matrix.calculation.engine.ThreadPool.<init>(ThreadPool.java:29) 
     at com.qmino.matrix.calculation.engine.application.Application.getThreadPool(Application.java:53) 
     at com.qmino.matrix.calculation.engine.application.Application$$EnhancerBySpringCGLIB$$57778e16.CGLIB$getThreadPool$0(<generated>) 
     at com.qmino.matrix.calculation.engine.application.Application$$EnhancerBySpringCGLIB$$57778e16$$FastClassBySpringCGLIB$$d67ab8c2.invoke(<generated>) 
     at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) 
     at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:312) 
     at com.qmino.matrix.calculation.engine.application.Application$$EnhancerBySpringCGLIB$$57778e16.getThreadPool(<generated>) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
     at java.lang.reflect.Method.invoke(Method.java:611) 
     at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:166) 
     ... 120 more 

我发现this question但它不是真正的帮助。任何人都可以帮助我吗?

回答

4

Httpclient库与WebSphere提供的冲突。请尝试通过Environment > Shared libraries创建独立共享库,将http客户端jar放在那里并将该库映射到应用程序。查看此文章的更多详细信息WebSphere 8.5 and Apache HTTP Client