httpClient调用json格式接口,eclipse执行成功,发布至tomcat服务器调用报错?

WangDaiHu 2017-12-19 11:44:37
public String getJson(String jsonstr) {
try {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
httpPost.addHeader(HTTP.CONTENT_TYPE, "application/json;charset=utf-8");
StringEntity se = new StringEntity(jsonstr);
se.setContentType("text/json");
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json;charset=utf-8"));
httpPost.setEntity(se);
HttpResponse response = httpClient.execute(httpPost);
// 输出调用结果
if (response != null && response.getStatusLine().getStatusCode() == 200) {
String result_1 = EntityUtils.toString(response.getEntity());
// 格式化字符集
result_1 = new String(result_1.getBytes("utf-8"), "utf-8");
// 生成 JSON 对象,分层抽取获取数据
JSONObject obj_1 = JSONObject.parseObject(result_1);
String result_2 = obj_1.getString("data");
jsonstr = result_2;
}
//释放资源
httpClient.getConnectionManager().shutdown();
} catch (Exception e) {
logger.error("请求获取数据出错:" + e.getMessage());
}
return jsonstr;
}
想请教下好心人,目前做一个程序功能,通过eclipse运行可用正常使用,发布至tomcat服务后报错如下:
HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.VerifyError: (class: org/apache/http/impl/client/DefaultHttpClient, method: setDefaultHttpParams signature: (Lorg/apache/http/params/HttpParams;)V) Incompatible argument to function
org.springframework.web.servlet.DispatcherServlet.triggerAfterCompletionWithError(DispatcherServlet.java:1284)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:965)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:876)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108)

root cause

java.lang.VerifyError: (class: org/apache/http/impl/client/DefaultHttpClient, method: setDefaultHttpParams signature: (Lorg/apache/http/params/HttpParams;)V) Incompatible argument to function
com.cn.hnust.controller.SolutionSyncController.getJson(SolutionSyncController.java:106)
com.cn.hnust.controller.SolutionSyncController.totalCount(SolutionSyncController.java:40)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:606)
org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:749)
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:690)
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:876)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.29 logs.
...全文
397 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
WangDaiHu 2018-01-02
  • 打赏
  • 举报
回复
引用 5 楼 tianfang 的回复:
httpClient 的版本,开发和部署的是否一致?
你还是通过maven打包部署的,一致的!
tianfang 2017-12-27
  • 打赏
  • 举报
回复
httpClient 的版本,开发和部署的是否一致?
WangDaiHu 2017-12-26
  • 打赏
  • 举报
回复
引用 2 楼 u013601194 的回复:
估计是编译jar包的JDK版本和你现在tomcat使用的JDK版本不一致
我的jdk都是用的这 Using JRE_HOME: /usr/java/jdk1.7.0_05/
WangDaiHu 2017-12-26
  • 打赏
  • 举报
回复
引用 1 楼 tianfang 的回复:
你的第三方jar包和tomcat自带的冲突
我的tomcat下jar包 annotations-api.jar jasper-jdt.jar catalina-ant.jar jsp-api.jar catalina-ha.jar servlet-api.jar catalina.jar tomcat-coyote.jar catalina-tribes.jar tomcat-dbcp.jar el-api.jar tomcat-i18n-es.jar jasper-el.jar tomcat-i18n-fr.jar jasper.jar tomcat-i18n-ja.jar 我的项目下jar包 activation-1.1.jar aopalliance-1.0.jar axiom-api-1.2.5.jar axis2-1.6.1.1.jar commons-codec-1.9.jar commons-dbcp-1.2.2.jar commons-fileupload-1.3.1.jar commons-io-2.4.jar commons-logging-1.1.3.jar commons-pool-1.3.jar core-3.3.0.jar db2jcc-9.0.jar db2jcc_license_cu-9.0.jar fastjson-1.2.37.jar httpclient-4.0.jar httpcore-4.0.1.jar jackson-core-asl-1.9.13.jar jackson-mapper-asl-1.9.13.jar jaxen-1.1-beta-9.jar jstl-1.2.jar log4j-1.2.17.jar mail-1.4.jar mybatis-3.2.6.jar mybatis-spring-1.2.2.jar slf4j-api-1.7.7.jar slf4j-log4j12-1.7.7.jar spring-aop-4.0.2.RELEASE.jar spring-beans-4.0.2.RELEASE.jar spring-context-4.0.2.RELEASE.jar spring-context-support-4.0.2.RELEASE.jar spring-core-4.0.2.RELEASE.jar spring-expression-4.0.2.RELEASE.jar spring-jdbc-4.0.2.RELEASE.jar spring-oxm-4.0.2.RELEASE.jar spring-test-4.0.2.RELEASE.jar spring-tx-4.0.2.RELEASE.jar spring-web-4.0.2.RELEASE.jar spring-webmvc-4.0.2.RELEASE.jar stax-api-1.0.1.jar xercesImpl-2.6.2.jar xml-apis-1.3.03.jar 好像没发现有冲突的吧?
Jason_He_199 2017-12-21
  • 打赏
  • 举报
回复
估计是编译jar包的JDK版本和你现在tomcat使用的JDK版本不一致
tianfang 2017-12-20
  • 打赏
  • 举报
回复
你的第三方jar包和tomcat自带的冲突

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧