変更できない xsd スキーマがあります。生成された Java クラスを生成します。
クラスが次のようになっているとします。
class Data {
protected List<Value> value;
...
}
class Value {
...
}
ここで、理想的には Value から拡張するために、独自の MyValue を用意する必要があります。
class MyValue extends Value {
Integer myOwnField1;
Long anotherProperty;
}
また、xml ファイルを解析するときに Value の代わりに MyValue を使用する unmarshaller と言うことができます。
後で、MyValue にいくつかの有用な新しいフィールドを含めることができるという事実を使用して、それらを操作したり、変更したりできるようになります。したがって、スキーマにある機能を変更せずに拡張したいと考えています。
アンマーシャラーの Value を MyValue に置き換えることは何とか可能ですか?
マップを作成する明白な方法とは別に、アンマーシャラーによって生成されたオブジェクトを MyValue の独自のフィールドとプロパティにマップできます。この方法は避けたいと思います。