3

Apache XML Beansを使用して xsd:enumeration 型から型を生成する場合、XMLBeans は、Java 5 列挙型ではなく、列挙型を表すある種の特別なクラスであるカスタム クラスを生成します。

これは、XMLBeans が Java 5 より古く、その時点で列挙型がなかったため、または Java 1.4 との互換性を維持したい場合に該当する可能性があります。ただし、「実際の」列挙型を取得したいので、質問は次のとおりです。Apache XML Beans で Java 5 列挙型を生成する方法はありますか?

( Jaxbは私が望むようにこれを行いますが、その詳細のためだけに XMLBeans を削除して Jaxb を導入するかどうかはわかりません。)

4

1 に答える 1

1

XML Bean を使用して目的を達成できるとは思いません。その理由もご自身でおっしゃっていました。JaxB に移行することをお勧めします。

しかし、XML Bean を引き続き使用したい場合は、パッチを適用することをお勧めします。生成されたクラスを後処理して、列挙型に変換できます。私は過去にantタスクを使用してそのようなことをしました。文字列の置換を実行することを認識している ant タスクがあるため、問題にはなりません。最悪の場合、Java で独自のタスクを実装できます。しかし、私はあなたが持っていないと信じています。これが最も簡単な解決策だと思います。

幸運を。

于 2011-02-10T08:17:22.910 に答える