同様の質問を見つけましたが、どの回答も役に立ちませんでした。
だから、バックポインタ関係を持つ2つのオブジェクトがあります。親 :
@XmlRootElement
public class A {
private B b;
@XmlElement(name = "Element B")
public B getB() {
return b;
}
public void setB(B b) {
this.b = b;
}
}
と B :
@XmlRootElement
public class B {
private A a;
@XmlInverseReference(mappedBy = "b")
public A getA() {
return a;
}
public void setA(A a) {
this.a = a;
}
}
jaxb.propertiesをモデルと同じパッケージに入れました。(javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory)
そして、このスニペットの後:
A a = new A();
a.setB(new B());
a.getB().setA(a);
" a "の Json 表現は循環的です "下記参照" :
{"要素 B":{"a":{"要素 B":{"a":{"要素 B":{"a":{"要素 B":{"a":{"要素 B": {"a":{"要素 B":{"a":{"要素 B":{"a":{"要素 B":{"a":{"要素 B":{"a":{ 「…………
スタックトレースも循環的です:
org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:245) で org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:212) で org.codehaus.jackson.map .ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:428) org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:245) org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer) .java:212) org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:428) で org.codehaus.jackson.map.ser.BeanSerializer.serializeFields(BeanSerializer.java:245) で
MOXy拡張機能をプロジェクトに正しく追加していないことを知ります...(プロジェクトeclipselink.jarに追加されたばかりです)