我有一个在 Wildfly 10 上运行的应用程序,需要更新版本的 jackson。简单地更新 Maven 依赖项是行不通的。Wildflys 自己的版本似乎会干扰...
有人有提示吗?
我有一个在 Wildfly 10 上运行的应用程序,需要更新版本的 jackson。简单地更新 Maven 依赖项是行不通的。Wildflys 自己的版本似乎会干扰...
有人有提示吗?
您可以将更新版本的 Jackson 添加到您的战争中并使用它,但容器(Resteasy)的 JAX-RS 子系统仍将使用它自己的 jackson 模块来(反)序列化您的 HTTP 请求/响应主体。
您可以添加一个具有较新版本的模块,但您可能会遇到与其他模块的依赖性问题(请参阅这个已被接受的拉取请求,因此它应该在下一个版本中,但我不知道任何计划的 Wildfly 版本日期)。
或者您可以打包您自己的 Jackson 版本并注册那些 MessageBodyReaders/Writers 以供 JAX-RS 使用。这应该可以完成这项工作。
@Provider
public class CustomJacksonJsonProvider extends JacksonJsonProvider {}
您可能还必须通过添加以下内容来排除内置 Jackson jboss-deployment-structure.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-jackson-provider" />
</exclusions>
</deployment>
</jboss-deployment-structure>