JAXB アンマーシャルで空のオブジェクトが作成されました 質問する

JAXB アンマーシャルで空のオブジェクトが作成されました 質問する

私は JAXB を使用して XML ファイルをオブジェクト ツリーにアンマーシャリングしています。ルート オブジェクトは null ではありませんが、XML ファイルにデータがあってもそのメンバーはすべて null です。私のオブジェクト クラスは、wsdls から Axis2 を使用して生成されました。ObjectFactory クラス、jaxb.in​​dex クラス、package.info アノテーションなどがあります。

私の問題はこの議論と同じです:http://old.nabble.com/AXIS2,-JAXB---アンマーシャリング-td26847419.html

まず第一に、データを適切に入力する方法はありますか?

そうでない場合、Axis2 または JAXB の代わりに、同じ機能を持ちながら互いにうまく連携する優れたライブラリはありますか?

ベストアンサー1

JAXB はデフォルトでエラーを無視します。これがデフォルトの構成である理由はわかりません。何か問題が発生した場合に例外をスローするように、このコードを追加してみてください。

unmarshaller.setEventHandler(
    new ValidationEventHandler() {
        @Override
        public boolean handleEvent(ValidationEvent event ) {
            throw new RuntimeException(event.getMessage(),
                                       event.getLinkedException());
        }
});

おすすめ記事