【发布时间】:2021-09-30 16:45:34
【问题描述】:
我的枚举类是。
public enum TaskName {
VALUE_1("value-1"),
VALUE_2("value-2");
@JsonValue
private String value;
@Override
public String toString() {
return value;
}}
我有一个正在运行的服务,它使用 RestTemplate.Exchange 发送 List
final String uriWithPathParms = String.format("%s/somePath/%s", first, second);
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString(uriWithPathParms)
.queryParam("status", "OK")
.queryParam("DATE", SomeDate)
.queryParam("taskNames", taskNames);
final String uriWithQueryParms = builder.toUriString();
HttpEntity<> httpEntity = new HttpEntity<>((prepareHttpHeaders(uriWithQueryParms, customHttpHeaders)));
try {
ResponseEntity<List<SomeClass>> responseEntity = restTemplate.exchange(
uriWithQueryParms,
HttpMethod.GET,
httpEntity
);
}
}
还有一个具有控制器类的接收器服务。
@GetMapping(value = "/first/somePath/second")
public HttpEntity<List<SomeClass>> demoController(
@RequestParam(value = "status", required = true) StatusEnum status,
@RequestParam(value = "DATE", required = true) LocalDateTime date,
@RequestParam(value = "taskNames") List<TaskName> taskNames) {
return ResponseEntity.ok(someService.someMethod(, status, date, taskNames));
}
我得到:
org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String[]' to required type 'java.util.List'; nested exception is org.springframework.core.convert.ConversionFailedException:
我搜索了很多,但没有得到任何明确的答案。如何将枚举列表发送到接收枚举列表的控制器。
【问题讨论】:
标签: java spring resttemplate