CXF - 没有邮件正文阅读器
问题描述:
我在这个论坛上尝试了许多解决方案来解决这个问题,但没有运气。我使用的是Apache CXF(v.2.5.11),我需要将一些Json发布到REST端点,并将数据解组到Java对象(例如Map)。CXF - 没有邮件正文阅读器
当我发帖请求我与
org.apache.cxf.jaxrs.utils.JAXRSUtils readFromMessageBody
WARNING: No message body reader has been found for request class Map, ContentType : application/json.
内部服务器错误,我试图解决here但类com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider
和Maven构件jackson-jaxrs-json-provider
(版本2.5.4)。没有运气。
我的端点被定义为这样的:
@POST
@Path("/test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response test(Map<String, Object> test) {
...
}
UPDATE
所以,我已经想通了,如果我回到JacksonJsonProvider的一个老版本Codehaus的,编组作品罚款:
春季背景:
<jaxrs:providers>
<bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
</jaxrs:providers>
有了依赖性:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.9.0</version>
</dependency>
所以我想的东西在fasterxml 2.4及以上版本已经改变。
答
我遇到了同样的问题。
根据http://osdir.com/ml/users-cxf-apache/2013-06/msg00212.html有2.7.6
之前在CXF的错误,以便尝试升级到2.7.6的CXF(或更新版本),你的代码应该可以正常工作了。