【发布时间】:2017-11-02 22:52:46
【问题描述】:
我用 Spring Boot 创建了一个简单的 Feign Client,如下所示:
@FeignClient("spring-cloud-eureka-client")
public interface GreetingClient {
@RequestMapping("/greeting")
String greeting(@RequestParam String name);
}
但是当我尝试启动一个应用程序时,我得到一个错误:
java.lang.IllegalStateException: RequestParam.value() was empty on parameter 0
首先我不明白是什么原因,并用谷歌搜索了很多但没有找到答案。几乎令人惊讶的是,我发现如果显式编写请求参数名称,它会起作用:
@RequestParam("name") String name
所以我的问题是:这是一个错误还是可以将其配置为不明确写入请求参数名称?
【问题讨论】:
-
我相信需要有一个 jvm 设置,以便参数名称可以与 java 8 一起使用。
-
@spencergibb 对于普通的 Spring 休息控制器,它无需在同一个 jvm 上进行任何其他设置即可工作
标签: spring spring-cloud spring-cloud-feign