2

Apache CXFのwsdl2javaユーティリティを使用して、いくつかのJAXBオブジェクトといくつかのWebサービスコードを作成しています。私のWSDLのスキーマには、最後にバージョン番号が付いた多くの名前空間があります。例えば:

http://example.org/sample/namespace/1.0

CXFがJAXBオブジェクトを生成すると、パッケージは次のようなパッケージ名になります。

org.example.sample.namespace.1_0

これは多くの異なる名前空間を持つ大規模なスキーマであるため、コードをリファクタリングするか、-pオプションを使用して名前空間をパッケージ名に手動でマップするためにかなりの時間を費やす必要があります。どちらのプロセスも非常に時間がかかります。

だから、もっと簡単なルートがあるかどうか誰かが知っているのだろうかと思います。それとも、私はうるさすぎて、パッケージ名をそのまま受け入れる必要がありますか?

4

1 に答える 1

3

-p一連のフラグが、名前空間をパッケージ名にマップする最も簡単な方法のように見えます。私の調査-bでは、JAXBバインディングファイルを渡すオプションを使用することでこれを実現できることもわかりました(私はJAXBに少し慣れていません)。-pこれも良い解決策ですが、たくさんのフラグを使用するよりも少し手間がかかります。また、JAXBバインディングファイルは長期的にはおそらく優れているため、必要に応じてプロセスを繰り返すことができます。

于 2010-07-15T22:28:54.900 に答える