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(或更新版本),你的代码应该可以正常工作了。