- SOA Tools Platform プラグインをインストールしておく。update site は "http://download.eclipse.org/releases/galileo"。
- Servers ビューで、Tomcat v6.0 サーバを構成しておく
- [Preference]から[Web Services]→[CXF 2.0 Preferences]の[CXF Runtime]タブで、CXF Home に CXF のインストールディレクトリを指定。
- 続けて、[Server and Runtime] で Tomcat v6.0 とApache CXF 2.xを指定
- Dynamic Web Project を作成する。(ここでは プロジェクト名:cxf-trial1とした)
- Project Facets で CXF 2.x Web Services が指定されていることを確認
- 新規ソースフォルダ resources を作成する。
- resources 下に greeting.wsdl を作成する。
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions name="greeting" targetNamespace="http://mycompany.com/greeting/" xmlns:tns="http://mycompany.com/greeting/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <wsdl:types> <xsd:schema targetNamespace="http://mycompany.com/greeting/"> <xsd:element name="greet"> <xsd:complexType> <xsd:sequence> <xsd:element name="username" type="xsd:string" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="greeting-response"> <xsd:complexType> <xsd:sequence> <xsd:element name="return" type="xsd:string" /> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> </wsdl:types> <wsdl:message name="request"> <wsdl:part name="parameters" element="tns:greet" /> </wsdl:message> <wsdl:message name="response"> <wsdl:part name="parameters" element="tns:greeting-response" /> </wsdl:message> <wsdl:portType name="Greeting"> <wsdl:operation name="greet"> <wsdl:input message="tns:request"/> <wsdl:output message="tns:response"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="GreetingSoapBinding" type="tns:Greeting"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="greet"> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="GreetingService"> <wsdl:port name="GreetingPort" binding="tns:GreetingSoapBinding"> <soap:address location="http://localhost:8080/GreetingService" /> </wsdl:port> </wsdl:service> </wsdl:definitions>
- greeting.wsdl のコンテキストメニューから新規 Web Service を作成(Web Service Runtime に、CXF 2.x が設定されている事を確認)
- http://localhost:8080/cxf-trial/services/ で Greeting の WSDL へのリンクが表示され、これを辿ると WSDL が表示される事を確認。
- Web Service Explorer から greet を実行してみると、与えた文字列に関係なく、自動生成コードにより固定文字列(_return-1938145346みたいな)が返される事を確認。
public java.lang.String greet(java.lang.String username) { return String.format("Hello, %s!", username); }WTP なので、変更したら勝手に 再発行される。Web Service Explorer で 文字列 "World" を与えて greet を実行してみると、"Hello, World!" が返される事を確認。 これで、他の CXF の機能(WS-Security とか)を試す準備ができた。
0 件のコメント:
コメントを投稿