Vla*_*mir 8 json resteasy jboss7.x
如何在JBoss 7.1.1上为RestEasy设置JSON提供程序?
RestEasy文档说:
RESTEasy允许您将JAXB带注释的POJO与JSON进行编组.此提供程序包装Jettison JSON库以实现此目的.
但我发现似乎在JBoss 7.1.1上Resteasy使用Jackson提供程序,因为我的类字段上的@XmlTransient被忽略了,但是@JsonIgnore被处理了.
我如何告诉Resteasy使用Jettison而不是Jackson?
在Jboss上我找到了两个提供商.
据我目前观察,Jackson 是 JBoss AS 7.1.2 中的默认值。
首先,RestEasy 模块对应用程序的类加载器隐藏,而 IMO 不应该这样做。所以我刚刚提交了https://issues.jboss.org/browse/AS7-5605。
其次,针对您的问题:要设置特定的提供程序,您需要将其从 AS 中的类加载器位置中删除 - 因此,再次注释掉module.xml
您不想使用的那些提供程序 - 如果 Jackson 可用,RestEasy使用它;否则它使用 Jetison。
另外,将它们添加为您的项目作为编译时依赖项,以便您可以使用它们的特定注释。例子:
<!-- RestEasy -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>jaxrs-api</artifactId>
<version>2.3.4.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.2</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
注意:在 AS7-5605 完成之前,您需要手动设置版本。之后(在 AS 的更高版本中),您必须删除这些版本并使用 JBoss BOM 中定义的版本。例如,请参阅JBoss AS QuckStarts 。
请随意使用替代提供商创建并贡献RestEasy 快速入门。
归档时间: |
|
查看次数: |
11227 次 |
最近记录: |