# Seltsame Fehlermeldung (httpclient)



## Mark (1. Nov 2008)

Hallo,
ich habe ein Programm geschrieben und es auch kompiliert, was ohne Fehler vonstatten geht. Wenn ich es aber ausführe, kommt folgender fehler. Habe schon versucht im Internet fündig zu werden, aber diesen Fehlertext kann ich nirgends finden. 



Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
    at org.apache.commons.httpclient.HttpMethodBase.<clinit>(HttpMethodBase.java:104)
    at logfiles.main(logfiles.java:58)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    ... 2 more

Benutze die httpclient Version 3.1 und Java 1.6. Ich nutze den JCreator.
Ich hoffe ihr könnt mir helfen und bedanke mich im Voraus.

Mark


----------



## maki (1. Nov 2008)

Dir fehlen zwei jars: http://hc.apache.org/httpclient-3.x/dependencies.html


----------



## Mark (1. Nov 2008)

maki hat gesagt.:
			
		

> Dir fehlen zwei jars: http://hc.apache.org/httpclient-3.x/dependencies.html



Sehr gut, danke schön...der obenbeschriebene Fehler ist nun weg, dafür hab ich noch mehr neue  ???:L 
Habe jetzt die Commons-Codec und die Commons-logging auch noch drauf gemacht und erhalte nun folgende Fehler ->

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
    at org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
    at org.apache.commons.httpclient.methods.ExpectContinueMethod.<init>(ExpectContinueMethod.java:93)
    at org.apache.commons.httpclient.methods.EntityEnclosingMethod.<init>(EntityEnclosingMethod.java:119)
    at org.apache.commons.httpclient.methods.PostMethod.<init>(PostMethod.java:106)
    at logfiles.main(logfiles.java:58)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.codec.DecoderException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    ... 5 more


Habe die JAR-Files einfach in das Verzeichniss kopiert in dem auch das Projekt liegt, und beim JCreator den Classpath an das Verzeichniss angepasst. Eingebunden habe ich die Methoden wie folgt -> 

```
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;
import org.apache.commons.httpclient.HttpMethodBase;
```

Hab das aus nem anderen Proggi im Internet gefunden. Kann es sein, das ich noch mehr einbinden muß ??? und reicht es wenn ich das Jar File einfach in das Verzeichniss kopiere, ich meine ob der Compiler dann alles selber macht, oder sollte man alles aus dem Jar Filke in den Pfad direkt entpacken ???
Reicht nicht auch ein 
	
	
	
	





```
import org.apache.commons.*.*;
```
 um alle Klassen / Methoden die sich dann dort befinden zugänglich zu machen ???
Und noch mal Danke
Mark


----------



## maki (1. Nov 2008)

>> Hab das aus nem anderen Proggi im Internet gefunden. Kann es sein, das ich noch mehr einbinden muß ???
Nein, sind nur imports.

>> dann alles selber macht, oder sollte man alles aus dem Jar Filke in den Pfad direkt entpacken ??? 
Bloss nicht.

>> um alle Klassen / Methoden die sich dann dort befinden zugänglich zu machen ??? 

Nein, dass sind imports.

Es fehlen offensichtlich noch die codecs:

```
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
```


----------



## Mark (1. Nov 2008)

Ja, hab den Fehler selbst gefunden. hab jetzt die JAR in das org.apache.commons Verzeichniss extrahiert. Jetzt gibt nur noch eine Nullpointerexception...darüber sollte sich was im Netz finden lassen  :### 
Gruß
Mark


----------



## maki (1. Nov 2008)

>> hab jetzt die JAR in das org.apache.commons Verzeichniss extrahiert.

Falsch, ganz falsch.

Du musst die 2 jars in den Build-/Classpath de Projektes aufnehmen, k.A. wie das mit JCreator geht.


----------



## Guest (1. Nov 2008)

maki hat gesagt.:
			
		

> >> hab jetzt die JAR in das org.apache.commons Verzeichniss extrahiert.
> 
> Falsch, ganz falsch.
> 
> Du musst die 2 jars in den Build-/Classpath de Projektes aufnehmen, k.A. wie das mit JCreator geht.



Das verstehe ich jetzt nicht, wenn ich die JARs über den Classpath einbinde, kompiliert er nicht mehr, und findet alle benötigten Sachen nicht mehr. Wenn ich aber meine Version mit dem entpacken ins Verzeichniss angebe, dann läuft das...wiso sollte man das nicht tun...ich meine immerhin läuft es.

Der "unwissende" Mark  :bahnhof:


----------

