Webサービス II (第2回) http://www.wakhok.ac.jp/~tatsuo/ws2/ 2005年10月6日 植田龍男 この時間の目標 JWSDP 1.6 のインストール (Webコンテナの準備) 構成の確認 jaxp, jaxb, jaxr, jaxrpc … JAX-RPC と WSDL サンプル HelloWorld で確認 作業手順 一般ユーザでログオン 必要なアーカイブとインストーラの入手 ( y:\ws2 から可能) tomcat50-jwsdp.zip jwsdp-1_6-windows-i586.exe tomcat50-jwsdp.zip の展開 (適当な場所に、 Z:\tomcat50-jwsdp ) jwsdp-1.6 インストールウィザードの実行 JWSDP 1.6 インストール(1) インストールウィザードの開始 JWSDP 1.6 インストール(2) Javaの環境を選択( J2SE 5.0 を使用) JWSDP 1.6 インストール(3) Webコンテナの選択(Tomcat50-jwsdp) JWSDP 1.6 インストール(4) Tomcatの管理ユーザの設定 JWSDP 1.6 インストール(5) 設定事項の確認画面 JWSDP 1.6 インストール(6) インストールの開始(数分間待ちます) 補足:JAXPの実装の変更 既存のJ2SE 1.4.2, J2SE 5.0 のコアにも JAXPのパッケージ、パーサ等の実装 J2SE 1.4 の実装は機能不足 J2SE 5.0 よりも JWSDP 1.6 のJAXPの バージョンが新しい 置き換える方法 1) endorsedディレクトリにコピー 2) java,javac にプロパティ情報で指定 インストールできたことの確認 Tomcat をメニューから起動、ブラウザでアクセス Tomcat50-jwsdp のトップ画面 ドキュメントとサンプルが表示 Tomcatの管理画面 インストール時に設定したパスワードを使用 アプリケーション・マネジャ Webアプリケーションの起動・停止が可能 JWSDP 1.6のディレクトリ構成 WSDL の概説 Document Type は <definitions> 要素 WSDL の名前空間名 "http://schemas.xmlsoap.org/wsdl/ 以下の記述ではPrefixを省略 他に SOAP, XML Schema の定義も利用 内部に5個の要素が順に登場 <types>, <message>, <portTyp>, <binding>, <service> <types> データ型の定義 W3C XML Schema でデータの型を定義 <types> <schema xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="Organization"> <sequence> <element name="id" type="xsd:string"/> <element name="name" type="xsd:string"/> </sequence> </complexType> </schema> </types> <messages> 交換されるデータ Javaのメソッドの引数、返り値に対応 <message name="HelloIF_sayHelloBack"> <part name="String_1" type="xsd:string"/> </message> <message name="HelloIF_sayHelloBackResponse"> <part name="result" type="xsd:string"/> </message> <portType> インタフェース サービスのインタフェースに対応 <portType name="HelloIF"> <operation name="sayHelloBack" parameterOrder="String_1"> <input message="tns:HelloIF_sayHelloBack"/> <output message="tns:HelloIF_sayHelloBackResponse"/> </operation> </portType> <binding> 通信の実装へ サービスの通信手段(Soapメッセージ等) <binding name="HelloIFBinding" type="tns:HelloIF"> <operation name="sayHelloBack"> <input> <soap:body encodingStyle= "http://schemas.xmlsoap.org/soap/encoding/" use="encoded" /> </input> <service> サービスにアクセス サービスのエンドポイントなどを指定 <service name="HelloWorldService"> <port name="HelloIFPort" binding="tns:HelloIFBinding"> <soap:address location=“http://localhost:8080/hello"/> </port> </service>
© Copyright 2024 ExpyDoc