一部のSOAPWebサービス用のWSDLファイルを作成するための優れた(できればオープンソースの)ツールを誰かが推奨できますか?
利用可能なEclipseプラグインのいくつかを試してみましたが、見つけたものにはあまり感心しませんでした。
前述のように、おそらく最も簡単な方法は、Apache CXF または Apache Axis2 を使用して WSDL を自動的に生成することです。
Eclipse の Java EE バージョンをダウンロードした場合は、Axis2 ファセットを使用して動的 Web プロジェクトを作成できるはずです。プロジェクトで単純な Java クラスを作成する場合は、それを右クリックして、[Web サービス] -> [Web サービスの作成] を選択できるはずです。これにより、Axis2 サービスが自動的に作成されます。
WSDL は、次のような URL から利用できます。http://localhost/axis/{yourservice}?WSDL
WSDL に関連するすべての頭痛の種を回避するための興味深いツールの 1 つは、Arjen Poutsma (Spring Web Services の主任開発者) によって作成された XSLT スクリプトです。
http://blog.springframework.com/arjen/archives/2006/07/27/xslt-that-transforms-from-xsd-to-wsdl/
基本的に、目的の操作 (つまり<BuyItem>
と<BuyItemResponse>
) に対応する単純なスキーマを開発し、関連するすべての WSDL がらくたを XSD から生成できます。「コントラクト ファースト」の Web サービスに興味があるが、そのコントラクトの開始点として WSDL を使用するという考えは、環境に優しく感じられる場合に強くお勧めします。
SOAP 経由で転送するためだけに、ファイルシステム上に大量のファイルを生成することにうんざりしています。現在、WS のプロデューサーとコンシューマーの両方にApache CXFを使用し、WSDL/スタブの生成を動的に処理できるようにしています。
使用している言語によって異なりますが、Java を使用している場合は、Apache CXFを参照することをお勧めします。これは、Java コードを SOAP Web サービスとして公開するための非常に堅実なフレームワークです。また、WSDL ファイルを直接生成するためのツールjava2wsdlも含まれています。