【发布时间】:2012-08-03 14:11:55
【问题描述】:
如何在 JBoss 7.1.1 中为 RestEasy 设置 JSON 提供程序?
RestEasy 文档说:
RESTEasy 允许您将带有 JAXB 注释的 POJO 编组到 JSON 或从 JSON 编组。 此提供程序包装了 Jettison JSON 库来完成此操作。
但我发现似乎在 JBoss 7.1.1 上 Resteasy 使用 Jackson 提供程序,因为我的类字段上的 @XmlTransient 被忽略了,但 @JsonIgnore 被处理了。
如何告诉 Resteasy 使用 Jettison 而不是 Jackson?
在 Jboss 上我找到了这两个提供商。
【问题讨论】:
-
我在文档中找到了下一个:
If you have the resteasy-jackson-provider-xxx.jar in your classpath, the Jackson JSON provider will be triggered. This will screw up code that is dependent on the Jettison JAXB/JSon provider. If you had been using the Jettison JAXB/Json providers, you must either remove Jackson from your WEB-INF/lib or classpath, or use the @NoJackson annotation on your JAXB classes.我用@NoJackson 注释标记了我的课程,但之后我的服务开始返回我的 XML 字符串响应而不是预期的 JSON。所以@NoJackson 对我没有帮助。