Spring boot requestBody不可用

Spring boot requestBody不可用,spring-boot,jhipster,spring-restcontroller,Spring Boot,Jhipster,Spring Restcontroller,RestController: @ResponseBody @RequestMapping(method=POST,value=“/path”,consumes=APPLICATION\u JSON\u value) 公共测试模型发布(@RequestBody-TestModel-model){ 收益模型; } 模型如下所示: 公共类TestModel实现可序列化{ 公共字符串getId(){ 返回id; } 公共无效集合id(字符串id){ this.id=id; } 私有字符串id; }

RestController:

@ResponseBody
@RequestMapping(method=POST,value=“/path”,consumes=APPLICATION\u JSON\u value)
公共测试模型发布(@RequestBody-TestModel-model){
收益模型;
}
模型如下所示:

公共类TestModel实现可序列化{
公共字符串getId(){
返回id;
}
公共无效集合id(字符串id){
this.id=id;
}
私有字符串id;
}
发布此JSon

{
“id”:4711
}
邮递员看起来像这样

获取响应:

{
“类型”:https://www.jhipster.tech/problem/problem-with-message",
“标题”:“错误请求”,
“状态”:400,
“详细信息”:“缺少必需的请求正文:公共…”。。。。,
“路径”:“/path”,
“消息”:“error.http.400”
}

似乎有什么东西在阻止
@RequestBody
,因为
@RequestParam
@PathParam
工作正常……有人知道问题的原因吗?

可能是类型问题。在邮递员中,您设置了一个数值,而在代码中,您正在等待字符串。请尝试输入Strin例如,在postman中使用g值,或者在代码中将id类型更改为“int”。

您是否尝试引用4711,因为它在java模型中是一个字符串,而不是整数/数字。例如
{“id”:“4711”}
是的,我尝试过,它不会更改结果(在我测试了从int到string的类型后,我更改了)…对我来说,似乎有什么东西阻止了RequestBody数据…是否有任何内置的安全选项来阻止@RequestBody?当尝试获取字符串而不是像这样的TestModel时,它也不起作用:post(@RequestBody String model)您是否提高了服务器上记录器“org.springframework.web”的日志级别*"? 您是否使用JHipster swagger ui或curl等更简单的REST客户端尝试了相同的请求?