当我尝试使用 restful webservice 访问 rezgo 示例 api 时,我遇到了异常。我想在示例对象中转换此响应
package com.mycompany.hr.client;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.client.RestOperations;
import org.springframework.web.client.RestTemplate;
import org.springframework.ws.client.core.WebServiceTemplate;
public class Main {
public static void main(String[] args) throws Exception {
List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>();
acceptableMediaTypes.add(MediaType.APPLICATION_XML);
HttpHeaders headers = new HttpHeaders();
headers.setAccept(acceptableMediaTypes);
//ResponseEntity<String> result = restTemplate.exchange("http://localhost:8080/spring-rest-provider/krams/person/{id}", HttpMethod.PUT, entity, String.class, id);
Map<String,String> urlParam=new HashMap<String,String>();
urlParam.put("key","2D8-F3V0-X7C0-C6I");
urlParam.put("transcode", "p103");
urlParam.put("i", "p103");
urlParam.put("t", "tag");
urlParam.put("q", "nature");
RestTemplate wsTemplate = new RestTemplate();
ResponseEntity<TourList> tl=( wsTemplate).getForEntity("http://xml.rezgo.com/xml?key=2D8-F3V0-X7C0-C6I&transcode=p103&i=search_items&t=tag&q=nature",TourList.class,Collections.singleton(urlParam));
}
}
这是我得到以下异常的代码。
Exception in thread "main" java.lang.NoSuchMethodError: org.springframework.util.CollectionUtils.unmodifiableMultiValueMap(Lorg/springframework/util/MultiValueMap;)Lorg/springframework/util/MultiValueMap;
at org.springframework.web.util.UriComponents.<init>(UriComponents.java:100)
at org.springframework.web.util.UriComponentsBuilder.build(UriComponentsBuilder.java:222)
at org.springframework.web.util.UriComponentsBuilder.build(UriComponentsBuilder.java:212)
at org.springframework.web.util.UriTemplate.<init>(UriTemplate.java:70)
at org.springframework.web.client.RestTemplate$HttpUrlTemplate.<init>(RestTemplate.java:653)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:407)
at org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:229)
at com.mycompany.hr.client.Main.main(Main.java:52)
请帮我解决这个问题。