Discussion:
DefaultHttpClient version conflict with OpenEJB
awmurray
2017-12-18 16:12:00 UTC
Permalink
It looks like I have a conflict between my http-client jars and TomEE.

This line
org.apache.http.params.HttpParms = new
org.apache.http.params.BasicHttpParams();

org.apache.http.impl.clientDefaultHttpCLient httpClient = new
org.apache.http.impl.clientDefaultHttpCLient.DefaultHttpClient(clientConnectionManager,
params);


I dug up this exception in the debugger clearly showing a conflict, but I'm
not sure how to fix it:

java.lang.LinkageError: loader constraint violation: when resolving method
"org.apache.http.impl.client.DefaultHttpClient.<init>(Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/params/HttpParams;)V"

the class loader (instance of
org/apache/openejb/util/classloader/URLClassLoaderFirst) of the current
class, com/lxnx/cobra/rest/proxy/ClientFactory,
and the class loader (instance of java/net/URLClassLoader) for the method's
defining class,
org/apache/http/impl/client/DefaultHttpClient, have different Class objects
for the type org/apache/http/params/HttpParams used in the signature


I'm using httpclient-4.3.1.jar and httpcore-4.3.jar






--
Sent from: http://tomee-openejb.979440.n4.nabble.com/TomEE-Users-f979441.html
Romain Manni-Bucau
2017-12-18 16:18:53 UTC
Permalink
Hi

tomee doesnt provide http client so likely needs more info to be able to
reproduce and understand what happens


Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> | Blog
<https://rmannibucau.metawerx.net/> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau>
Post by awmurray
It looks like I have a conflict between my http-client jars and TomEE.
This line
org.apache.http.params.HttpParms = new
org.apache.http.params.BasicHttpParams();
org.apache.http.impl.clientDefaultHttpCLient httpClient = new
org.apache.http.impl.clientDefaultHttpCLient.DefaultHttpClient(
clientConnectionManager,
params);
I dug up this exception in the debugger clearly showing a conflict, but I'm
java.lang.LinkageError: loader constraint violation: when resolving method
"org.apache.http.impl.client.DefaultHttpClient.<init>(Lorg/
apache/http/conn/ClientConnectionManager;Lorg/
apache/http/params/HttpParams;)V"
the class loader (instance of
org/apache/openejb/util/classloader/URLClassLoaderFirst) of the current
class, com/lxnx/cobra/rest/proxy/ClientFactory,
and the class loader (instance of java/net/URLClassLoader) for the method's
defining class,
org/apache/http/impl/client/DefaultHttpClient, have different Class objects
for the type org/apache/http/params/HttpParams used in the signature
I'm using httpclient-4.3.1.jar and httpcore-4.3.jar
--
Sent from: http://tomee-openejb.979440.n4.nabble.com/TomEE-Users-
f979441.html
awmurray
2017-12-19 22:23:23 UTC
Permalink
I found this problem- it was a difference in http-core that is now a problem
because of the way the class loaders are working.

I fixed this, but I think I have another problem with
resteasy-jaxrs-2.3.6.Final.

I'm getting a class cast excpetion:
java.lang.ClassCastException: org.apache.cxf.jaxrs.impl.RuntimeDelegateImpl
cannot be cast to org.jboss.resteasy.spi.ResteasyProviderFactory

On:

ResteasyProviderFactory.getInstance()

Where should I look? Thanks for you help!




--
Sent from: http://tomee-openejb.979440.n4.nabble.com/TomEE-Users-f979441.html
Romain Manni-Bucau
2017-12-20 05:52:36 UTC
Permalink
Probably the same with a jaxrs api in your app.
Post by awmurray
I found this problem- it was a difference in http-core that is now a problem
because of the way the class loaders are working.
I fixed this, but I think I have another problem with
resteasy-jaxrs-2.3.6.Final.
java.lang.ClassCastException: org.apache.cxf.jaxrs.impl.
RuntimeDelegateImpl
cannot be cast to org.jboss.resteasy.spi.ResteasyProviderFactory
ResteasyProviderFactory.getInstance()
Where should I look? Thanks for you help!
--
Sent from: http://tomee-openejb.979440.n4.nabble.com/TomEE-Users-
f979441.html
Loading...