Exception in apache http client
im using eclipse ide and when i run my program everything works fine but when i run the same program on server then it gives me this exception and i have already put my all far files as well as in my lib folder, Please help me to short out to this problem.
java.lang.ClassNotFoundException: org.apache.http.HttpRequest at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2836) at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1160) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1668) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546) at org.controller.KeyRank.doPost(KeyRank.java:41) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722)
Here is my code :
public String readGoogle(String keyword, int page) { HttpClient client = new DefaultHttpClient(); // Create a method instance keyword = keyword.trim(); keyword = keyword.replaceAll(" ", "+"); String url = "http://www.google.com/search?q="+keyword+"&start="+page+"&btnG=Google+Search&aq=f&oq="; String responseBody = ""; HttpGet method = new HttpGet(url); //Provide custom retry handler is necessary //:OC:method.getParams().setParameter(HttpConnectionParams.RETRY_HANDLER, new DefaultHttpRequestRetryHandler(3, false)); try{ //execute the method System.out.println("executing request " + method.getURI()); // Create a response handler ResponseHandler responseHandler = new BasicResponseHandler(); responseBody = client.execute(method, responseHandler); System.out.println("----------------------------------------"); System.out.println(responseBody); System.out.println("----------------------------------------"); } catch (HTTPException e) { System.err.println("Fatal protocol violation: " + e.getMessage()); e.printStackTrace(); } catch (IOException e) { System.err.println("Fatal transport error: " + e.getMessage()); e.printStackTrace(); } finally { //release the connection method.releaseConnection(); } return responseBody; }
Add Http core jar to your build path, find the required jar from this url. http://www.java2s.com/Code/Jar/h/Downloadhttpcorejar.htm
deploy the jar and then compile, your error will be resolved.
Without your classpath configuration
and knowledge about the web server you are deploying your application to, it is not easy to help but from the look of things, it seems you are missing the HttpCore
jar in your deployment environment.
The missing class is found in that jar.
链接地址: http://www.djcxy.com/p/33050.html上一篇: ActiveMQ一些消费者如果到达生产者后面,他们不会完成任务
下一篇: 在Apache HTTP客户端的例外