我的一个Web服务中有一个方法可以接受PUT和POST。这是因为我们开始使用PUT,但后来我们也需要支持POST(对于新服务)。
@RequestMapping( value = "/endpointURL", method = {RequestMethod.PUT, RequestMethod.POST})
我正在尝试创建一个调用此方法的测试应用程序,但是Spring在启动过程中会引发Autowiring错误,并显示以下错误:
java.lang.IllegalStateException:方法[名称]只能包含1 方法字段。找到:[PUT,POST]
Spring和Feign版本在这两个应用程序(具有此端点的webservice和测试应用程序)中都相同。
请问有什么解决办法?
谢谢!
答案 0 :(得分:0)
方法支持以下各种HTTP方法。您可以发布您的类源代码吗?我认为您应该还有另一个问题。也许是重复的路径。
@RequestMapping("/v1/echo")
@RestController
public class EchoApi {
@RequestMapping(value = "/", method = { RequestMethod.PUT, RequestMethod.POST })
public ResponseEntity<String> echo(@RequestBody String body){
System.err.println(body);
return new ResponseEntity<String>(body, HttpStatus.OK);
}
}
答案 1 :(得分:0)
最后是由于我们使用的Feign版本。在版本10之后已修复。将关闭此主题。谢谢!