[英]com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion
[英]com.fasterxml.jackson.databind.JsonMappingException In Jboss 7.1
我們已經從 Jboss 6 遷移到 JBoss 7 后,在發送 Json 時我們收到了以下錯誤:
引起:com.fasterxml.jackson.databind.JsonMappingException:直接自引用導致循環(通過引用鏈:java.util.ArrayList[0]->com.listgroup.ready.service.config.Domain["class1" ]->java.util.Collections$UnmodifiableRandomAccessList[0]->com.listgroup.ready.service.config.Table["class2"]->java.util.Collections$UnmodifiableRandomAccessList[0]->com.listgroup.ready .service.config.Column["class3"]->com.listgroup.skeleton.FieldType["class4"]->com.listgroup.skeleton.FieldType["class4"]) 在 com.fasterxml.jackson.databind.JsonMappingException .from(JsonMappingException.java:284) at com.fasterxml.jackson.databind.SerializerProvider.mappingException(SerializerProvider.java:1110) at com.fasterxml.jackson.databind.SerializerProvider.reportMappingProblem(SerializerProvider.java:1135) at com。 fastxml.jackson.databind.ser.BeanPropertyWriter._handleSelfReference(BeanPropertyWriter.java:921)
這也不會為 tomcat 復制。
我從日志中發現 Jboss 正在使用他們自己的庫而不是 WEB-INF/lib 庫。
為了避免這種情況,我在 WEB-INF 中添加了 jboss-deployment-structure.xml 文件。 jboss-deployment-structure.xml 文件的內容是:
<?xml version='1.0' encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="com.fasterxml.jackson.core.jackson-databind" />
<module name="com.fasterxml.jackson.core.jackson-annotations" />
<module name="com.fasterxml.jackson.core.jackson-core" />
<module name="com.fasterxml.jackson.datatype.jackson-datatype-jdk8" />
<module name="com.fasterxml.jackson.datatype.jackson-datatype-jsr310" />
<module name="com.fasterxml.jackson.jaxrs.jackson-jaxrs-json-provider" />
<module name="org.jboss.resteasy.resteasy-jackson2-provider" />
<!-- end of logger service exclusions -->
</exclusions>
</deployment>
</jboss-deployment-structure>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.