JAX-RS在java.lang.Object中获取POST请求的主体

时间:2018-03-10 15:03:05

标签: json jax-rs

我想在JAX-RS(CXF实现)中创建一个POST端点,我可以在java.lang.Object类中读取JSON请求体,因为JSON可以是任何东西,我事先不知道架构。即。

@POST
@Consumes({MediaType.APPLICATION_JSON_VALUE})
public void register(Object request) {

}

此解决方案导致运行时错误:

No message body reader has been found for class java.lang.Object, ContentType: application/json
2018-03-10 16:52:49.156 [http-nio-8080-exec-7] ERROR c.i.i.c.w.r.e.JsonProcessingExceptionMapper - af04c2db-9e87-4b69-963d-272caa6b1329 - WebApplicationException: HTTP 415 Unsupported Media Type
javax.ws.rs.WebApplicationException: HTTP 415 Unsupported Media Type
    at org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1346)

唯一有效的方法是使用JsonNode对象,但我想避免使用它,因为它会使我的swagger模型与一堆属性混淆。

0 个答案:

没有答案