私のPojoオブジェクトを使用してUnmarshall Jaxbを使用してxmlファイル(Input.xml)を読み込んでいます。Jaxb Marshaller.put.xmlファイルの同じデータを含むoutput.xmlファイル(レコード処理結果を示す追加のタグ付き)
入力ファイルの例をUnmarshallerで読み込みます。
File file = new File(".\\src\\test\\files\\Input.xml");
JAXBContext jaxbContext = JAXBContext.newInstance(MerchantPayments.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
MerchantPayments MpObj = (MerchantPayments) jaxbUnmarshaller.unmarshal(file);
// Process MpObj..
私は今に必要なもの、input.xmlにファイルの同じデータを含むのOutput.xmlファイルを生成することですが、レコードが正常にロードされているかどうかを示す<result>
という新しいタグを追加します。
input.xmlの同じデータを含み、新しいタグを追加するJaxb Marshal機能を使用してoutput.xmlファイルを生成する最も良い方法はどれですか?
新しいタグを追加するためにoutput.xmlファイルの新しいPojoを生成する必要がありますか?Jaxb Marshallerを使用する方法がありますか?私は新しいタグ<result>
を含む、追加タグ<result>
input.xmlに
<?xml version='1.0' encoding='UTF-8'?>
<payments>
<payment>
<account>123</account>
<order>110000000001</order>
<amount>19.0</amount>
</payment>
<payment>
<account>1234</account>
<order>110000000002</order>
<amount>20.0</amount>
</payment>
</payments>
のOutput.xmlでgeneateする必要がinput.xmlにファイルとのOutput.xmlファイルの下
:
<?xml version='1.0' encoding='UTF-8'?>
<payments>
<payment>
<account>123</account>
<order>110000000001</order>
<amount>19.0</amount>
**<result>Record loaded correctly</result>**
</payment>
<payment>
<account>1234</account>
<order>110000000002</order>
<amount>20.0</amount>
**<result>Record Failed</result>**
</payment>
</payments>
ありがとうございます。
ご返信ありがとうございます。この方法でも、新しい要素の結果を定義するためにxsdファイルを変更する必要があります。元のxsdファイルを変更することはできません。 – Alex