1

xjc で生成されたルート クラスが、ルート クラスのラッパーにすぎないクラス A の 1 つを拡張するようにします。xsdファイルを変更せずにそれを行うことはできますか(スキーマでコンパイルされたクラスにスキーマ外の特定のクラスを強制的に拡張する方法)

4

1 に答える 1

1

スーパールート クラスを定義できます ( http://jaxb.java.net/nonav/2.0.2/docs/vendorCustomizations.htmlを参照)。(その xjc 実行で) 生成されたすべてのクラスは、そのルート クラスを拡張します。
必要なグローバル バインディングは、xsd 内ではなく、外部バインディング ファイルで宣言できます ( http://java.sun.com/webservices/docs/1.4/tutorial/doc/JAXBUsing4.html#wp148515を参照)。次に、xsd と一緒に xjc ジェネレーターに渡すことができます。

于 2012-08-25T20:18:12.840 に答える