You are viewing a plain text version of this content. The canonical link for it is here.
Posted to httpclient-users@hc.apache.org by Russell Bateman <ru...@windofkeltia.com> on 2018/01/19 20:37:43 UTC
java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
I haven't used an Apache HTTP client in a few years. So, I've started
fresh. Having written precious little code carefully following
http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html, I get
this exception as soon as I call createDefault():
/* CloseableHttpClient client = HttpClients.createDefault();*/
HttpGet get = new HttpGet( query );
get.setHeader( ACCEPT_CHARSET, UTF8 );
get.setHeader( "Accept", "application/xml,application/json" );
CloseableHttpResponse response = client.execute( get );
HttpEntity entity = response.getEntity();
try
{
return entity.getContent();
}
catch( IOException e )
{
throw new IOException( e.getMessage() + " occurred getting query
response" );
}
finally
{
response.close();
}
I die similarly in my POST requests.
The full stack trace follows (below), but here's what I have in
/pom.xml/:. I added the httpcore out of desperation and googling for
this problem. No matter, it happens with or without it and no matter
what version I add.
<apache.http.client.version>*4.5.4*</apache.http.client.version>
* <dependency>**
**<groupId>org.apache.httpcomponents</groupId>**
**<artifactId>httpclient</artifactId>**
**<version>${apache.http.client.version}</version>**
** </dependency>*
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>*4.4.7*</version>
</dependency>
What have I done wrong?
Here's the stacktrace:
*java.lang.NoClassDefFoundError: org/apache/http/config/Lookup*
at
org.apache.http.impl.client.HttpClients.createDefault(HttpClients.java:56)
at
com.imatsolutions.utilities.ApacheClientOperations.getQuery(ApacheClientOperations.java:123)
at
com.imatsolutions.utilities.ApacheClientOperationsTest.testStatus(ApacheClientOperationsTest.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at
com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: java.lang.ClassNotFoundException: org.apache.http.config.Lookup
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 29 more
Re: java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
Posted by Russell Bateman <ru...@windofkeltia.com>.
Ah, okay, I get that. I'll go look for it.
Thanks!
On 01/19/2018 03:12 PM, Oleg Kalnichevski wrote:
> On Fri, 2018-01-19 at 14:46 -0700, Russell Bateman wrote:
>> Oleg,
>>
>> Thank you for responding.
>>
>> What version of httpcore should I put there? There is apparently non
>> corresponding to 4.5.4. I tried httpcore-4.4.8 and the result was
>> the
>> same. 4.4.8 is the latest version I can find in Maven.
>>
>> https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore
>>
>> Russ
>>
> The version is correct but _something else_ (like AWS SDK) is pulling
> older code from your classpath. You need to find out what it is.
>
> See this SO thread. It might help
>
> https://stackoverflow.com/questions/21864521/java-lang-nosuchfielderror
> -org-apache-http-message-basiclineformatter-instance
>
> Oleg
>
>
>> On 01/19/2018 02:28 PM, Oleg Kalnichevski wrote:
>>> On Fri, 2018-01-19 at 13:37 -0700, Russell Bateman wrote:
>>>> I haven't used an Apache HTTP client in a few years. So, I've
>>>> started
>>>> fresh. Having written precious little code carefully following
>>>> http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html,
>>>> I
>>>> get
>>>> this exception as soon as I call createDefault():
>>>>
>>>> /* CloseableHttpClient client = HttpClients.createDefault();*/
>>>> HttpGet get = new HttpGet( query );
>>>>
>>>> get.setHeader( ACCEPT_CHARSET, UTF8 );
>>>> get.setHeader( "Accept", "application/xml,application/json"
>>>> );
>>>>
>>>> CloseableHttpResponse response = client.execute( get );
>>>> HttpEntity entity = response.getEntity();
>>>>
>>>> try
>>>> {
>>>> return entity.getContent();
>>>> }
>>>> catch( IOException e )
>>>> {
>>>> throw new IOException( e.getMessage() + " occurred
>>>> getting
>>>> query
>>>> response" );
>>>> }
>>>> finally
>>>> {
>>>> response.close();
>>>> }
>>>>
>>>> I die similarly in my POST requests.
>>>>
>>>> The full stack trace follows (below), but here's what I have in
>>>> /pom.xml/:. I added the httpcore out of desperation and googling
>>>> for
>>>> this problem. No matter, it happens with or without it and no
>>>> matter
>>>> what version I add.
>>>>
>>>>
>>>> <apache.http.client.version>*4.5.4*</apache.http.client.version>
>>>>
>>>> * <dependency>**
>>>> **<groupId>org.apache.httpcomponents</groupId>**
>>>> **<artifactId>httpclient</artifactId>**
>>>> **<version>${apache.http.client.version}</version>**
>>>> ** </dependency>*
>>>> <dependency>
>>>> <groupId>org.apache.httpcomponents</groupId>
>>>> <artifactId>httpcore</artifactId>
>>>> <version>*4.4.7*</version>
>>>> </dependency>
>>>>
>>>> What have I done wrong?
>>>>
>>> Your dependency tree appears to be wrong. Something is pulling an
>>> old
>>> version of HttpCore.
>>>
>>> Oleg
>>>
>>>
>>> -----------------------------------------------------------------
>>> ----
>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>> For additional commands, e-mail: httpclient-users-help@hc.apache.or
>>> g
>>>
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
Re: java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
Posted by Oleg Kalnichevski <ol...@apache.org>.
On Fri, 2018-01-19 at 14:46 -0700, Russell Bateman wrote:
> Oleg,
>
> Thank you for responding.
>
> What version of httpcore should I put there? There is apparently non
> corresponding to 4.5.4. I tried httpcore-4.4.8 and the result was
> the
> same. 4.4.8 is the latest version I can find in Maven.
>
> https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore
>
> Russ
>
The version is correct but _something else_ (like AWS SDK) is pulling
older code from your classpath. You need to find out what it is.
See this SO thread. It might help
https://stackoverflow.com/questions/21864521/java-lang-nosuchfielderror
-org-apache-http-message-basiclineformatter-instance
Oleg
> On 01/19/2018 02:28 PM, Oleg Kalnichevski wrote:
> > On Fri, 2018-01-19 at 13:37 -0700, Russell Bateman wrote:
> > > I haven't used an Apache HTTP client in a few years. So, I've
> > > started
> > > fresh. Having written precious little code carefully following
> > > http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html,
> > > I
> > > get
> > > this exception as soon as I call createDefault():
> > >
> > > /* CloseableHttpClient client = HttpClients.createDefault();*/
> > > HttpGet get = new HttpGet( query );
> > >
> > > get.setHeader( ACCEPT_CHARSET, UTF8 );
> > > get.setHeader( "Accept", "application/xml,application/json"
> > > );
> > >
> > > CloseableHttpResponse response = client.execute( get );
> > > HttpEntity entity = response.getEntity();
> > >
> > > try
> > > {
> > > return entity.getContent();
> > > }
> > > catch( IOException e )
> > > {
> > > throw new IOException( e.getMessage() + " occurred
> > > getting
> > > query
> > > response" );
> > > }
> > > finally
> > > {
> > > response.close();
> > > }
> > >
> > > I die similarly in my POST requests.
> > >
> > > The full stack trace follows (below), but here's what I have in
> > > /pom.xml/:. I added the httpcore out of desperation and googling
> > > for
> > > this problem. No matter, it happens with or without it and no
> > > matter
> > > what version I add.
> > >
> > >
> > > <apache.http.client.version>*4.5.4*</apache.http.client.version>
> > >
> > > * <dependency>**
> > > **<groupId>org.apache.httpcomponents</groupId>**
> > > **<artifactId>httpclient</artifactId>**
> > > **<version>${apache.http.client.version}</version>**
> > > ** </dependency>*
> > > <dependency>
> > > <groupId>org.apache.httpcomponents</groupId>
> > > <artifactId>httpcore</artifactId>
> > > <version>*4.4.7*</version>
> > > </dependency>
> > >
> > > What have I done wrong?
> > >
> >
> > Your dependency tree appears to be wrong. Something is pulling an
> > old
> > version of HttpCore.
> >
> > Oleg
> >
> >
> > -----------------------------------------------------------------
> > ----
> > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> > For additional commands, e-mail: httpclient-users-help@hc.apache.or
> > g
> >
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org
Re: java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
Posted by Russell Bateman <ru...@windofkeltia.com>.
Oleg,
Thank you for responding.
What version of httpcore should I put there? There is apparently non
corresponding to 4.5.4. I tried httpcore-4.4.8 and the result was the
same. 4.4.8 is the latest version I can find in Maven.
https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore
Russ
On 01/19/2018 02:28 PM, Oleg Kalnichevski wrote:
> On Fri, 2018-01-19 at 13:37 -0700, Russell Bateman wrote:
>> I haven't used an Apache HTTP client in a few years. So, I've
>> started
>> fresh. Having written precious little code carefully following
>> http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html, I
>> get
>> this exception as soon as I call createDefault():
>>
>> /* CloseableHttpClient client = HttpClients.createDefault();*/
>> HttpGet get = new HttpGet( query );
>>
>> get.setHeader( ACCEPT_CHARSET, UTF8 );
>> get.setHeader( "Accept", "application/xml,application/json" );
>>
>> CloseableHttpResponse response = client.execute( get );
>> HttpEntity entity = response.getEntity();
>>
>> try
>> {
>> return entity.getContent();
>> }
>> catch( IOException e )
>> {
>> throw new IOException( e.getMessage() + " occurred getting
>> query
>> response" );
>> }
>> finally
>> {
>> response.close();
>> }
>>
>> I die similarly in my POST requests.
>>
>> The full stack trace follows (below), but here's what I have in
>> /pom.xml/:. I added the httpcore out of desperation and googling for
>> this problem. No matter, it happens with or without it and no matter
>> what version I add.
>>
>> <apache.http.client.version>*4.5.4*</apache.http.client.version>
>>
>> * <dependency>**
>> **<groupId>org.apache.httpcomponents</groupId>**
>> **<artifactId>httpclient</artifactId>**
>> **<version>${apache.http.client.version}</version>**
>> ** </dependency>*
>> <dependency>
>> <groupId>org.apache.httpcomponents</groupId>
>> <artifactId>httpcore</artifactId>
>> <version>*4.4.7*</version>
>> </dependency>
>>
>> What have I done wrong?
>>
> Your dependency tree appears to be wrong. Something is pulling an old
> version of HttpCore.
>
> Oleg
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
Re: java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
Posted by Oleg Kalnichevski <ol...@apache.org>.
On Fri, 2018-01-19 at 13:37 -0700, Russell Bateman wrote:
> I haven't used an Apache HTTP client in a few years. So, I've
> started
> fresh. Having written precious little code carefully following
> http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html, I
> get
> this exception as soon as I call createDefault():
>
> /* CloseableHttpClient client = HttpClients.createDefault();*/
> HttpGet get = new HttpGet( query );
>
> get.setHeader( ACCEPT_CHARSET, UTF8 );
> get.setHeader( "Accept", "application/xml,application/json" );
>
> CloseableHttpResponse response = client.execute( get );
> HttpEntity entity = response.getEntity();
>
> try
> {
> return entity.getContent();
> }
> catch( IOException e )
> {
> throw new IOException( e.getMessage() + " occurred getting
> query
> response" );
> }
> finally
> {
> response.close();
> }
>
> I die similarly in my POST requests.
>
> The full stack trace follows (below), but here's what I have in
> /pom.xml/:. I added the httpcore out of desperation and googling for
> this problem. No matter, it happens with or without it and no matter
> what version I add.
>
> <apache.http.client.version>*4.5.4*</apache.http.client.version>
>
> * <dependency>**
> **<groupId>org.apache.httpcomponents</groupId>**
> **<artifactId>httpclient</artifactId>**
> **<version>${apache.http.client.version}</version>**
> ** </dependency>*
> <dependency>
> <groupId>org.apache.httpcomponents</groupId>
> <artifactId>httpcore</artifactId>
> <version>*4.4.7*</version>
> </dependency>
>
> What have I done wrong?
>
Your dependency tree appears to be wrong. Something is pulling an old
version of HttpCore.
Oleg
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org