【发布时间】:2015-09-26 13:27:01
【问题描述】:
使用 resttemplate 向基于 spring 的休息服务发出发布请求时,我收到以下错误
下面是我的代码:
public void getData(String ip){
try{
RestTemplate rt = new RestTemplate();
rt.getMessageConverters().add(new MappingJacksonHttpMessageConverter());/////Error Occurs are this line
rt.getMessageConverters().add(new StringHttpMessageConverter());
String uri=new String("http://"+ip+":8080/pcap");
Pcap_params pcap=new Pcap_params();
pcap.setFlow_id("786");
pcap.setIp_a("192.65.78.22");
pcap.setPort_a("8080");
pcap.setRegex("%ab");
pcap.setTime_range("22-23");
ResponseEntity rep=rt.postForEntity(uri, pcap, ResponseEntity.class);
System.out.println("hi");
}
下面的错误我得到了
org.springframework.web.util.NestedServletException:处理程序处理失败;嵌套异常是 java.lang.NoClassDefFoundError: org/codehaus/jackson/JsonProcessingException org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:972) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) javax.servlet.http.HttpServlet.service(HttpServlet.java:622) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
注意我正在使用
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.http.converter.json.MappingJacksonHttpMessageConverter;
这与org/codehaus/jackson/JsonProcessingException 的使用无关,所以真的很困惑为什么会发生错误。我也尝试添加库,但它给出了 no class dif:objectmapper not found 的错误。
【问题讨论】:
-
你使用的是maven还是ant?或者只是你设置了库罐子?
-
你用的是什么版本的 Spring?
标签: java json spring spring-mvc servlets