私のjax-wsベースのWebサービスビルドのすべてのリリースをバージョン管理するためのベストプラクティスはありますか? REST ベースのサービスをバージョン管理する方法をいくつか見てきました (たとえば、URL にバージョン情報を含めるなど)。JAX-WS ベースの Web サービスをバージョン管理する別の方法はありますか? .
1 に答える
0
サービスをバージョン管理するために、別のtargetNamespaceを使用します。
たとえば、インターフェイスに注釈を追加します。
@WebService(name = "YourService"、targetNamespace = "http:// whatever / you / want / VersionNumber")
wsgenを実行すると、xsdに別のtargetNamespaceが含まれることになります。古いクライアントはすべてWebサービスを使用できなくなり、クリーンな「フェイルファスト」エラーが発生します。
ただし、これは非常に煩わしいため、このバージョンを更新するのは、サービスの署名が変更された場合のみです。これにより、奇妙なデバッグが困難なエラーを防ぐことができます。
于 2013-01-21T12:55:37.533 に答える