0

つまり、Web サーバーでのシリアル化時に、org.jbpm.graph.def.ProcessDefinition クラスのすべてのインスタンスの processDefinition フィールドを null に設定したいので、CXF Web サービスから値を返すたびにこの例外が発生しないようにします。

com.sun.istack.SAXException2 : A cycle is detected in the object graph. This will cause infinitely deep XML: ProcessDefinition(DailyProcess) -> ProcessDefinition(DailyProcess)

尋ねる理由は、私はすでに以下のクラスを書いているからです

public class XmlJbpmProcessDefinitionAdapter extends XmlAdapter<ProcessDefinition, ProcessDefinition> {

    @Override
    public ProcessDefinition unmarshal(ProcessDefinition v) throws Exception {
        return v;
    }

    @Override
    public ProcessDefinition marshal(ProcessDefinition v) throws Exception {
        v.setProcessDefinition(null);
        return v;
    }
}

package-info.java ファイルで次のように定義しました。

@XmlJavaTypeAdapter(value=XmlJbpmProcessDefinitionAdapter.class, type=org.jbpm.graph.def.ProcessDefinition.class)

ただし、そのメソッドは呼び出されません。

4

1 に答える 1