我的服务器资源:
@RequestMapping(value = "/properties")
@PutMapping(consumes = APPLICATION_JSON_UTF8_VALUE)
@ResponseStatus(CREATED)
public void saveProperty(@Valid @RequestBody PropertyForm form) {
service.save(new PropertyImpl(form));
}
我的客户资源:
WebClient client = WebClient.create(serviceUrl);
Mono<Void> save(PropertyForm form) {
return client.put()
.uri("properties")
.contentType(MediaType.APPLICATION_JSON_UTF8)
.body(BodyInserters.fromObject(form))
.retrieve()
.bodyToMono(Void.class);
}
我的Build.Gradle文件:
dependencies {
compile "org.springframework.boot:spring-boot-starter-reactor-netty:2.0.4.RELEASE"
compile "org.springframework.boot:spring-boot-starter-web:2.0.4.RELEASE"
compile "org.springframework:spring-webflux:5.0.4.RELEASE"
compile "javax.xml.bind:jaxb-api:2.3.0"
}
class PropertyForm {
private String group;
private String key;
private String value;
// getters & setters
}
我终于找到了答案。问题实际上是在发送表单中。表单的作用域是包,与setter/getter相同。在我将PropertyForm提取到API模块并公开所有内容之后,它就可以工作了。
因此,解决方案是将form替换为:
public class PropertyForm {
private String group;
private String key;
private String value;
// public getters & setters
}
谢谢你的帮助和时间。
我收到以下异常: 我的测试如下所示: BaseTest为:
我的控制器如下所示: 我已经尝试将“consumes”更改为将APPLICATION_OCTET_STREAM_VALUE删除为MULTIPART_FORM_DATA_VALUE,也尝试删除它,但这些都没有帮助。 如果你需要更多的信息,请告诉我。谢了。
@PostMapping public UserResponse createUser(@RequestBody UserRequest userDetail){ 这是我收到的错误代码 } 我尝试了很多不同的方法仍然没有得到解决方案这是来自邮递员的图片来自邮递员的图片
我以前有ElasticSearch 5.2,刚刚升级到6.0。 我试图创建一个索引模板以下指南在这里,但得到了错误 我的问题是
问题内容: 我写了下面的@Controller方法 请求失败并出现以下错误 [PS:泽西岛要友好得多,但鉴于此处的实际限制,现在无法使用它] 问题答案: 问题在于,当我们使用application / x-www-form-urlencoded时,Spring不会将其理解为RequestBody。因此,如果要使用它,则必须删除@RequestBody批注。 然后尝试以下操作:
问题内容: 基于Spring @Controller对x-www-form-urlencoded的问的答案 我写了下面的@Controller方法 失败的请求因以下错误 [PS:Jersey要友好得多,但鉴于这里的实际限制,现在无法使用它] 问题答案: 问题在于,当我们使用 application / x-www-form-urlencoded时 ,Spring不会将其理解为RequestBody