0
私はxsi:type属性を使用するxmlを持っているので、 "BaseData"要素は "ChildField"要素がスキーマの "BaseData"要素のメンバではないにもかかわらず "ChildField"要素を含むことができます:xsi:typeを使用するxmlをdozerにマップするにはどうすればいいですか?
<BaseData xsi:type="Child">
<ChildField>value</ChildField>
</BaseData>
生成されたJavaコードは次のとおり
子供:
@XmlSeeAlso({
Child.class,
})
public class BaseData {}
ベース:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Child", propOrder = {
"childField"
})
public class Child extends BaseData
{
@XmlElement(name = "ChildField")
protected String childField;
}
は今ようやく、私は私の構造この構造マップをしたいが、私はドーザマッピングxmlファイルでこれを入れたとき、それは失敗します。
<field>
<a>baseData</a>
<b>myData</b>
<a-hint>BaseData,Child</a-hint>
<b-hint>MyClass</b-hint>
</field>
<field>
<a>baseData.childField</a>
<b>myData.myField</b>
</field>
私が手に例外がある:
org.dozer.MappingException: No read or write method found for field (baseData.childField) in class (class BaseData)
IをCUSを作成することで、私はこの問題を解決し
mapper.map
方法