3

unmarshall不明なコンテンツのサブセットに対する要件がありますXML。その非整列化オブジェクトを使用して、一部のコンテンツを変更し、同じ XML コンテンツ (サブセット) を元の XML に再バインドする必要があります。

サンプル入力 XML:

<Message>
    <x>
    </x>
    <y>
    </y>
    <z>
    </z>
    <!-- Need to unmarshall this content to "Content" - java Object -->
    <Content>
        <Name>Robin</Name>
        <Role>SM</Role>
        <Status>Active</Status>
    </Content>
.....
</Message>

<Content>他の XML 部分を同じままにして、タグだけを非整列化する必要があります。以下に示すように、タグ内の要素を変更し、<Content>変更された XML 部分を元の部分とバインドする必要があります。

予期される出力 XML:

<Message>
    <x>
    </x>
    <y>
    </y>
    <z>
    </z>
    <!-- Need to unmarshall this content to "Content" - java Object -->
    <Content>
        <Name>Robin_123</Name>
        <Role>Senior Member</Role>
        <Status>1</Status>
    </Content>
.....
</Message>

私の質問:

  1. この要件の可能な解決策は何ですか? (解析を除くDOM- XML コンテンツは非常に巨大であるため)

  2. でこれを行うオプションはありますJAXB2.0か?

これについてあなたの提案をしてください。

4

2 に答える 2

0

Objectクラスのプロパティに注釈を付けることができます。@XmlAnyElementデフォルトでは、マップされていないコンテンツは DOM ノードとしてキャプチャされます。に a を指定するDomHandler@XmlAnyElement、フォーマットを制御できます。コンテンツが として保持される例へのリンクを次に示しStringます。

于 2013-05-28T19:02:40.933 に答える