cxf+spring 配置restfull风格的接口所遇到的问题

1 配置过程中,由于使用的是spring 4.x版本与cxf版本2.x不匹配,好多功能不能使用。改变cxf版本3.x。

2 通过cxf发布普通的webservice接口没有问题。但是发布rest风格的webservic 是在使用@Produces(MediaType.APPLICATION_JSON)时遇到问题,没法将object转化为json。
报错—No message body writer has been found for class com.tech4j.demo.webservice.Person, ContentType: application/json”
解决:cxf3.x以上版本不提供默认的JSON Provider了,我们需要自己找一个第三方的Provider,设置给CXF框架,它才能够自动调用该Provider完成转换操作。
 我们需要在发布服务的时候,为CXF的服务factory设置这个第三方的Provider,例如Jackson。代码如下:
 
JacksonJaxbJsonProvider jaxbProvider = new JacksonJaxbJsonProvider();
factory.setProvider(jaxbProvider);
  这样一来,CXF就会自动调用这个Provider来完成符合JAXB标准的对象与JSON格式的转换工作
 
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值