java - Problem with the Apache DefaultHttpClient class -


i newbie servlet applications, trying learn subject. on way, wrote servlet class called formwebservlet uses org.apache.http.impl.client.defaulthttpclient class. however, exception

java.lang.classnotfoundexception: org.apache.http.impl.client.defaulthttpclient 

... shows class not exist, although have added jar file project.

the server returns "http status 500" error message "root cause" missing class:

java.lang.noclassdeffounderror: org/apache/http/impl/client/defaulthttpclient     testpackage.formwebservlet.doget(formwebservlet.java:45)     javax.servlet.http.httpservlet.service(httpservlet.java:621)     javax.servlet.http.httpservlet.service(httpservlet.java:722) 

tries 1) searched missing jar file , added project (by going on project in "eclipse java ee ide web developers, 20100917-0705"'s project explorer, select "properties", selected "java build path" , clicked [add external jars...] button.) added jar file apache site , called httpclient-4.1.1.jar. 2) still same error, extracted 7-zip defaulthttpclient.class file , put webcontent/web-inf/lib directory.

question doing wrong? neither of other 2 jar files contain class, nor there class name in web-inf/lib folder.

details inculded jars:

common-httpclient-3.0.1.jar httpclient-4.1.1.jar httpcore-4.1.jar 

formwebservlet.jar:

/**  *   */ package testpackage;  import java.io.ioexception; import java.io.printwriter;  import javax.servlet.servletexception; import javax.servlet.annotation.webservlet; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse;  import org.apache.http.httpresponse; import org.apache.http.client.httpclient; import org.apache.http.client.methods.httpget; import org.apache.http.impl.client.defaulthttpclient;  import coreservlets.servletutilities;  /**  *  */ @webservlet(description = "gets book's barcode form", urlpatterns = { "/formwebservlet" }) public class formwebservlet extends httpservlet {      /** */     private static final long serialversionuid = 6008315960327824633l;      /**      * @see httpservlet#doget(httpservletrequest request,      *  httpservletresponse response)      */     protected void doget(final httpservletrequest request,              final httpservletresponse response)     throws ioexception, servletexception {         final string bar_code = request.getparameter("barcode");          response.setcontenttype("text/html");         final printwriter out = response.getwriter();          if (bar_code != null) {             httpclient client = new defaulthttpclient();             final string address = servletutilities.gethttpaddress(bar_code);              out.println("address = \"" + address + '\"');             httpget = new httpget(address);              httpresponse httpresponse = null;  // removed commented code use these objects         }     } } 

just put jar files web-inf/lib, not class file. way included in deployment.


Comments