java - JBoss 6.4.20 补丁中允许使用哪些版本的 Jackson?

标签 java json jboss jackson jboss6.x

我正在尝试更新我在 6.4.20 JBoss patch 之后使用的 Jackson 版本.我正在使用 org.codehause.jackson,据我所知,JBoss 6.4.x 不为较新的 com.fasterxml.jackson 提供隐式依赖项。

假设 jackson-mapper-asl-1.9.9.redhat-6 是用于 this patch 的有效包是否合适? ?当滚动到 6.4.20 announcement 的 noarch 部分时,我看到提到了 codehaus-jackson-mapper-asl-1.9.9-12.redhat_6。这是否意味着这是推荐的版本?我可以看到它是 05/14/18 发布的,公告是 05/15/18 发布的。

目前我遇到以下错误,因为 codehause-jackson-mapper-aslfasterxml-jackson-databind 相关联,让我相信我正在使用版本不正确。

16:01:22,620 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (http-127.0.0.1:8080-1) RESTEASY000100: Failed executing POST /find: org.jboss.resteasy.spi.ReaderException:

org.codehaus.jackson.map.JsonMappingException: Illegal type [...] to deserialize: prevented for security reasons

[...]

Caused by: org.codehaus.jackson.map.JsonMappingException: Illegal type [...] to deserialize: prevented for security reasons at org.codehaus.jackson.map.deser.BeanDeserializerFactory.checkLegalTypes(BeanDeserializerFactory.java:1521) [jackson-mapper-asl-1.9.9.redhat-6.jar:1.9.9.redhat-6] `

最佳答案

我最近从 JBoss EAP 6.3.0 升级到 6.4.20 并遇到了同样的异常。

根据异常的堆栈跟踪,我发现有必要使用要反序列化的类的完整类名设置系统属性 jackson.deserialization.whitelist.packages

如果你愿意,你可以只放包的后缀。对于多个值,以逗号分隔。您可以在第 38 行的 jackson-mapper-asl-1.9.9.redhat-6.jarorg.codehaus.jackson.map.deser.BeanDeserializerFactory 中看到这一点到 45。

对于 JBoss 环境,您可以在 standalone*.xmldomain.xml 中定义系统属性,如下所示:

<system-properties>
    <property name="jackson.deserialization.whitelist.packages" value="br.com.myapp" />
</system-properties>

关于java - JBoss 6.4.20 补丁中允许使用哪些版本的 Jackson?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50917932/

相关文章:

java - 添加 ImageIcon 的路径 - Java

javascript - 在 Polymer 中使用 iron-ajax 接收错误 "Polymer::Attributes: couldn' t 将数组解码为 JSON"

web-services - JBoss启动后如何初始化RestEasy web服务

java - 绑定(bind)到特定端口的 jBoss 问题

java - @NamedNativeQuery - 如何将它绑定(bind)到存储库方法?

java - 带有 TextView As 链接的 Android 对话框

java - Apache CXF 格式错误的消息异常

java - 在java中解析google geocode结果 - 找不到JSONArray [0](它在那里)

java - 如何标记数组中的重复项?

java - 如何在JBoss 4中集成 'Bouncy CaSTLe'