json - 如何在 Apache Tomee plus 中使用 JAX-RS 为 JSON 设置读写提供程序

标签 json tomcat jax-rs

我可以从我的 Pojo 返回简单的文本,但是当我更改为返回 JSON 时它失败了。我在我的方法中有正确的生产和消费注释,我检查了 Jquery 和服务器之间的内容协商是否正确。

似乎只是转换为 JSON 失败了。我在 webapps/tomee/lib 中复制了 Jackson jar 。我还尝试了我的应用程序的 lib 文件夹。

执行 GET 时的错误消息:

No message body writer has been found for response class <myClass>

此错误由 JAXRSOut 拦截器类引发

发帖时的错误是:

No message body reader has been found for request class <myClass>

此错误由 JAXRSUtils 类触发

  • 谢谢

最佳答案

我通过在 TomEE 的 conf/system.properties 文件中列出 JAX-RS 提供程序来完成这项工作。然后我将 jar 添加到 TomEE 的 lib 文件夹中。网站上的文档指出应该将 jars 放在 webapp/tomee/lib 上,但这对我不起作用。

conf/system.properties

openejb.cxf.jax-rs.providers = org.codehaus.jackson.jaxrs.JacksonJsonProvider, org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider 

我丢弃的 jar :

  • jackson-mapper-asl-1.9.9.jar
  • jackson-core-asl-1.9.9.jar
  • jackson -jaxrs-1.9.9

关于json - 如何在 Apache Tomee plus 中使用 JAX-RS 为 JSON 设置读写提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12156084/

相关文章:

c# - JSON.NET 序列化空 JSON

java - Tomcat(没有热部署)可以忽略覆盖的jar吗

rest - 创建一个接受 POST 和 GET 的 Jax-RS RESTful 服务?

java - 向服务器发送 JSON 会给出 415 不支持的媒体类型

java - JAX-RS 将实体作为 JAXB 对象和字符串获取

java - 为什么我收到错误显然 jsonStoreEnabled 未设置为 true ,而我确实将其设置为 true ?

javascript - 如何将本地json文件渲染为HTML和浏览器

json - 解析为json字符串正确格式

spring - 获取 java.lang.ClassNotFoundException : com. mysql.jdbc.Driver 异常

amazon-web-services - 使用 Application Load Balancer 将 http 重定向到 https