3

私はAndroid用のAPIクライアントライブラリを作成していますが、JAXBはAndroidで機能しないように見えるため、SimpleXMLを使用してオブジェクトを逆シリアル化しました。

APIプロジェクトのクラスには、JAXBのXMLアノテーションがあります。クラスをAndroidライブラリにコピーしましたが、SimpleXMLのXMLアノテーションを変更しました。明らかに、これにより変更の同期に問題が発生します。

同じコードをJAXBとSimpleXMLで使用できるように、2つを互換性のあるものにする方法はありますか?

4

1 に答える 1

1

私が考えている唯一の解決策は、両方の注釈タイプを同時に使用することです。各メンバー フィールドを JAXB および SimpleXML アノテーションでマークできます。もちろん、これを機能させ、コンパイラが存在しない注釈について文句を言わないようにするための接着剤が必要です。これを取り除くには、独自の注釈ライブラリを作成して、すべての場合に欠落している注釈 (Android では JAXB 注釈、他のプロジェクトでは SimpleXML 注釈) を実装して、期待されること (何もしない) を行うことができます。

于 2011-07-14T21:22:53.570 に答える