2011-12-16 12 views
3

私はJSONを取得し、オブジェクトクラスにマップするためにサーバーに接続するために、バネアンドロイド使用:春RestTemplateなしのContent-Type

瓶:

jackson-core-asl-1.9.2.jar 
jackson-mapper-asl-1.9.2.jar 
spring-android-auth-1.0.0.M4.jar 
spring-android-core-1.0.0.M4.jar 
spring-android-rest-template-1.0.0.M4.jar 

ソース:

RestTemplate restTemplate = new RestTemplate(/* clientHttpRequestFactory */); 

ClientHttpRequestFactory clientHttpRequestFactory = new SimpleClientHttpRequestFactory(); 
restTemplate.setRequestFactory(clientHttpRequestFactory); 

MappingJacksonHttpMessageConverter httpMessageConverter = new MappingJacksonHttpMessageConverter(); 
List<MediaType> supportedMediaTypes = new ArrayList<MediaType>(); 
supportedMediaTypes.add(new MediaType("application", "json")); 
httpMessageConverter.setSupportedMediaTypes(supportedMediaTypes); 

List<HttpMessageConverter<?>> httpMessageConverters = restTemplate 
       .getMessageConverters(); 
httpMessageConverters.add(httpMessageConverter); 
restTemplate.setMessageConverters(httpMessageConverters); 

MultiValueMap<String, Object> map = new LinkedMultiValueMap<String, Object>(); 
map.add("param1", "param1"); 
map.add("param2", "2"); 

T t = restTemplate.postForObject(url, map, T.class); 

サーバからの結果のようなJSON文字列です:

{"aaa":"111", "bbb":"222"} 

結果は次のとおりです。

Caused by: org.springframework.web.client.RestClientException: Cannot extract response: no Content-Type found 
    at org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:60) 
    at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:470) 
    at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:425) 
    at org.springframework.web.client.RestTemplate.postForObject(RestTemplate.java:303) 

は、レスポンスヘッダには Content-Typeがあってはなりません。 RestTemplateはどうすれば Content-Typeを気にしないのですか?

答えて

-2

これは、Spring 3.0.xコードから継承された欠点のようです。詳細は、https://jira.springsource.org/browse/SPR-7911を参照してください。回避策の1つを試すことができますhere

+2

この問題は204の内容とは関係ありません。彼は、サーバはレスポンスボディを返すが、 'Content-Type'ヘッダは返さないと言う。 –

関連する問題