unmarshall(Javaオブジェクトに変換)する必要のあるxmlファイルがあります。現在、Javaオブジェクトはサードパーティのものであり、マーシャリング解除のために注釈を付けることはできません。注釈なしでアンマーシャリングする方法に関するアイデア。以下の私のコードスニペットを見つけてください
JAXBContext context;
try {
context = JAXBContext.newInstance(Abc.class);
Unmarshaller unMarshaller = context.createUnmarshaller();
Abc abc= (Abc) unMarshaller.unmarshal(new FileInputStream("C:\\Documents and Settings\\sandeep.nair\\Desktop\\abc.xml"));
} catch (JAXBException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (Exception e){
}
次の例外が発生します。引数なしのコンストラクター(Adapterのアノテーションを追加することでこれを解決できることはわかっていますが、アノテーションなしで処理するためのサンプルスニペットを知りたい、または見たいです)
同様に、JAXBでインターフェイスを処理できないという別のメッセージが表示されます。
com.sun.xml.bind.v2.runtime.IllegalAnnotationsException:IllegalAnnotationExceptionsの5つのカウントjava.sql.Timestampには、引数なしのデフォルトコンストラクターがありません。この問題は、次の場所に関連しています。java.sql.Timestamp at public java.sql.Timestamp com.test.Abc.getSomeTimestamp()atcom.riteaid.entities.customer.Customercom.test.Defにはno-argデフォルトコンストラクタ。この問題は、次の場所に関連しています:com.test.Def .. ..
java.sql.Dateには、引数なしのデフォルトコンストラクタがありません。この問題は、次の場所に関連しています。at java.sql.Date ... com.test.Ghiはインターフェースであり、JAXBはインターフェースを処理できません。この問題は、次の場所に関連しています。...com.test.Ghiには引数なしのデフォルトコンストラクターがありません。この問題は、次の場所に関連しています。