https://github.com/thymeleaf/...
我使用jpa,通过注解,将两个类级联关联,
在html页面中,通过thymeleaf 标签,获取任何一个类的对象的时候都会出现
java.lang.StackOverflowError: null
at sun.reflect.misc.ReflectUtil.checkPackageAccess(ReflectUtil.java:164) ~[na:1.8.0_151]
at sun.reflect.misc.ReflectUtil.isPackageAccessible(ReflectUtil.java:195) ~[na:1.8.0_151]
at java.beans.Introspector.getBeanInfo(Introspector.java:164) ~[na:1.8.0_151]
at org.thymeleaf.util.JavaScriptUtils.printObject(JavaScriptUtils.java:353) ~[thymeleaf-2.1.6.RELEASE.jar:2.1.6.RELEASE]
at org.thymeleaf.util.JavaScriptUtils.print(JavaScriptUtils.java:184) ~[thymeleaf-2.1.6.RELEASE.jar:2.1.6.RELEASE]
at org.thymeleaf.util.JavaScriptUtils.printKeyValue(JavaScriptUtils.java:346) ~[thymeleaf-2.1.6.RELEASE.jar:2.1.6.RELEASE]
at org.thymeleaf.util.JavaScriptUtils.printMap(JavaScriptUtils.java:337) ~[thymeleaf-2.1.6.RELEASE.jar:2.1.6.RELEASE]
这个错误,这应该是thymeleaf的bug吧,thymeleaf有修复这个bug吗?
我现在的解决办法是使用第三方json jar包jackson将对象转成json传给前台,但是需要自己手动操作,感觉不好;
有其他更好地方式吗
这是thymeleaf 2的bug ,升级到thymeleaf 3可以解决此bug;
thymeleaf2的时候是自己处理的json;
thymeleaf3使用的jackson,jackson可以通过使用@JsonIgnoreProperties和@JsonIgnore注解解决 两个类互相引用的问题