我可以从Pojo返回简单文本,但当我改为返回JSON时,它失败了。我的方法中有正确的products和consumps注释,并且我检查了Jquery和服务器之间的内容协商是否正确。
似乎是转换为JSON失败了。我在webapps/tome/lib中复制了杰克逊罐子。我还尝试了应用程序的lib文件夹。
执行GET时的错误消息:
No message body writer has been found for response class <myClass>
此错误由JAXRSOut Intercepter类引发
发帖时的错误是:
No message body reader has been found for request class <myClass>
此错误由JAXRSUtils类引发
- 谢谢
我通过在TomEE的conf/system.properties文件中列出JAX-RS提供程序来完成这项工作。然后我将jar添加到TomEE的lib文件夹中。网站上的文档指出,应该把罐子放在webapp/tomee/lib上,但这对我不起作用
conf/system.properties
openejb.cxf.jax-rs.providers = org.codehaus.jackson.jaxrs.JacksonJsonProvider, org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
我扔下的罐子:
- jackson-mapper-as-1.9.9.jar
- jackson-core-as-1.9.9.jar
- 千斤顶-轴-19.9
如果您使用jersey,您可以尝试Genson库http://code.google.com/p/genson/.最新版本0.92提供了使用jersey的jax-rs web服务中json支持的自动检测。你只需要放下罐子,瞧!:)