java如何使用RestTemplate使用AbstractMessageConverter
一,。总结问题
我正在尝试使用RestTemplate将逗号分隔的值(CSV格式的数据,而不是CSV文件)读入responseEntity(responseEntity<;List<;Map<;String,Object>;>;>;>;responseEntity)
但是,, 我得到下面的错误
org。springframework。网状物客户RestClientException:为类型[java.util.List<;java.util.Map<;java.lang.String,java.lang.Object>;]提取响应时出错和内容类型[text/csv;charset=utf-8];嵌套的异常是org。springframework。http。转换器。HttpMessageTreadableException:JSON解析错误:无法反序列化java.util.ArrayList
值外字符串标记的实例;嵌套的异常是com。fasterxml。杰克逊。数据绑定。exc.MismatchdinPutException:无法反序列化java.util.ArrayList
值外字符串标记的实例
在[源:(PushbackInputStream);行:1,列:1]
二,。描述一下你的尝试
:我试过一些MessageConverter
从这里开始 https://www.logicbig.com/tutorials/spring-framework/spring-web-mvc/csv-msg-converter.html 我在那里得到了一些有用的信息,并使用了一些。 但我一直犯同样的错误
三,。适当时,显示一些代码
Map<String, Object> requestBody = new HashMap<>();
List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
messageConverters.add(new ByteArrayHttpMessageConverter());
messageConverters.add(new StringHttpMessageConverter());
messageConverters.add(new ResourceHttpMessageConverter());
messageConverters.add(new MappingJackson2HttpMessageConverter());
messageConverters.add(new CsvHttpMessageConverter());
converter.setSupportedMediaTypes(Collections.singletonList(MediaType.ALL));
messageConverters.add(converter);
restTemplate.setMessageConverters(messageConverters);
// Prepare headers
HttpHeaders headers = new HttpHeaders();
headers.add("X-ACCESS-TOKEN", getAccessToken(_casinoAuth, _casinoAuth.getCasinoAuthId().toString()));
headers.setContentType(MediaType.TEXT_PLAIN);
// Ready to request.
URI apiUrl = uriComponentsBuilder.queryParams(queryParams).build().expand(pathParams).toUri();
HttpEntity<Object> requestEntity = new HttpEntity<>(requestBody, headers);
ResponseEntity<List<Map<String, Object>>> responseEntity;
我从这里得到错误信息
responseEntity=restTemplate。exchange(APIRL、httpMethod、requestEntity、新参数化类型引用<;列表<;映射<;字符串、对象>;){ });
共 (0) 个答案