杰克逊JSON不与CXF合作

JBJ*_*JBJ 8 json cxf jackson

JacksonJsonProvider不与CXF合作.

CXF v2.6.0 Jackson v2.1.2(com.fasterxml.jackson)RESTClient(用于测试)

我确实在beans.xml中配置了如下所示的提供程序.

<bean id="jacksonMapper" class="com.fasterxml.jackson.databind.ObjectMapper">
    <property name="dateFormat">
    <bean class="java.text.SimpleDateFormat">
    <constructor-arg type="java.lang.String" value="yyyy-MM-dd'T'HH:mm:ss.SSSZ">     </constructor-arg>
    </bean>
   </property>
</bean>

<bean id="jacksonProvider" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider">
    <property name="mapper" ref="jacksonMapper" />
</bean>
Run Code Online (Sandbox Code Playgroud)

在jaxrs:服务器.....>

<jaxrs:providers>
<ref bean="jaxbProvider" />
<ref bean="jacksonProvider" />                        
</jaxrs:providers>

</jaxrs:server>
Run Code Online (Sandbox Code Playgroud)

应用程序部署没有任何问题,它提供了良好的JSON,而我将请求作为"application/xml",响应为"application/json".

当我尝试通过设置Content-Type = application/json来请求JSON时,我面临500内部服务器错误

该请求将通过CXF日志记录在日志文件中.

该请求根本没有登陆我的webservice的服务实现类.

请求正文中的JSON是:

{"SearchOrdersRequest":{"LoginCredentials":{"AppId":"BookStore","Username":"myuser","Password":"abcd1234","SecurityToken":"Vcvx45YilzX1"},"SearchHeader":{"SearchCategory":"Rep","FilterLogic":"1 AND 2","SearchParams":{"Field":"Order Number (s)","Operator":"EQUALS","Values":"600045335"}}}} 
Run Code Online (Sandbox Code Playgroud)

任何直接的帮助表示赞赏.

kol*_*nov 0

前段时间,当我没有在类路径中抛弃库时,我遇到了 json 请求的问题。查看http://www.javatips.net/blog/2012/02/cxf-restful-tutorial教程。