java.lang.ClassNotFoundException: org.apache.http.util.Args

来源:互联网 发布:花生壳域名ip解析失败 编辑:程序博客网 时间:2024/05/29 15:16

java.lang.ClassNotFoundException: org.apache.http.util.Args

昨天在用HttpClient做接口调用时,发现请求没有响应,也没有任何提示信息,但是在另外一个项目中却可以正常调用接口。于是,怀疑是系统本身做了什么限制,努力尝试,结果还是不行。后来在执行的地方改了部分代码,结果抛出ClassNotFoundException。有抛异常就好办了。可是项目中,明明有jar,而且还能跳转过去,为何还会报类找不到异常呢,后来网上找了些问题,说是jar冲突(使用Maven管理)。然后对比了下两个项目的jar,发现确实是不一样。虽然两个系统用的jar就差一个版本,但是却相差甚远。后来换了下版本就OK了。

public static String httpPostWithJSON(String url, String json) throws Exception {        String encoderJson = URLEncoder.encode(json, "UTF-8");    DefaultHttpClient httpClient = new DefaultHttpClient();    HttpPost httpPost = new HttpPost(url);    httpPost.addHeader("Content-type","application/json; charset=utf-8");      httpPost.setHeader("Accept", "application/json");      httpPost.setEntity(new StringEntity(json, Charset.forName("UTF-8")));      long startTime = System.currentTimeMillis();    // 以下代码调用时没有响应,直接跳过,也不报任何异常    **HttpResponse response = httpClient.execute(httpPost);**      int statusCode = response.getStatusLine().getStatusCode();      long endTime = System.currentTimeMillis();      logger.info("statusCode:" + statusCode);      logger.info("调用API 花费时间(单位:毫秒)" + (endTime - startTime));      if (statusCode != HttpStatus.SC_OK) {          logger.error("Method failed:" + response.getStatusLine());      }      String body = EntityUtils.toString(response.getEntity());    return body;}

文章参考: http://blog.csdn.net/z69183787/article/details/46335993

0 1
原创粉丝点击