Oracle HTML DB 2日で開発者
リリース1.6
部品番号: B16330-01
  目次へ移動
目次

戻る
戻る
次へ
次へ
 

6 Webサービスの実装方法

Webサービスを使用すると、プラットフォームおよび言語に依存しない環境で、Webを介したアプリケーション間の通信が可能になります。 典型的なWebサービスの使用例には、ビジネス・アプリケーションでHTTPプロトコルを使用して、指定したURLのサービスにリクエストを送信することがあります。サービスはリクエストを受信し、処理してからレスポンスを返します。 外部Webサービスとのコールは、Oracle HTML DBで開発したアプリケーション内に組み込むことができます。

Oracle HTML DBのWebサービスは、SOAP(Simple Object Access Protocol)に基づいています。SOAPは、World Wide Web Consortium(W3C)が策定した、インターネットを介したリクエストとレスポンスの送受信用の標準プロトコルです。SOAPメッセージは、サービス・プロバイダとサービス・ユーザー間でSOAPエンベロープに入れて送受信できます。

このチュートリアルでは、Oracle HTML DBアプリケーション内からWebサービスをコールする方法について説明します。

このセクションの内容は次のとおりです。


注意:

SOAP 1.1仕様はW3C覚書です。(SOAPより優先される標準を作成するために、W3C XML Protocol Working Groupが結成されています。)

Simple Object Access Protocol(SOAP)1.1の詳細は、次のWebサイトを参照してください。

http://www.w3.org/TR/SOAP/


Webサービス参照の作成

Oracle HTML DBでWebサービスを使用するには、ウィザードを使用してWebサービス参照を作成します。 各Webサービス参照は、ターゲットWebサービスを説明するWeb Services Description Language(WSDL)ドキュメントをベースにしています。 Webサービス参照を作成する場合、ウィザードはWSDLを分析して必要な情報をすべて収集し、有効なSOAPメッセージを作成します。

Webサービス参照を作成する場合、WSDLの位置の特定方法を決定する必要があります。WSDLの位置の特定には、2つの方法があります。

このチュートリアルでは、UDDIレジストリを検索して、Webサービス参照を作成します。

新しいアプリケーションの作成

最初に、新しいアプリケーションを作成します。

アプリケーションを作成するには、次の手順を実行します。

  1. Application Builderのホームページで、「アプリケーションを作成」をクリックします。

  2. 「作成方法を選択」で、「最初から」を選択して「次へ」をクリックします。

  3. 「アプリケーションを作成」で、次の手順を実行します。

    1. 「名前」に、Web Servicesと入力します。

    2. 「ページ」で、1を選択します。

    3. 次へ」をクリックします。

  4. 「タブ」で、デフォルトの「1レベルのタブ」を受け入れて「次へ」をクリックします。

  5. 「ページ名」に、Web Servicesと入力して「次へ」をクリックします。

  6. 「ページのタブ名」に、Web Servicesと入力して「次へ」をクリックします。

  7. 「テーマ」で、「テーマ2」を選択して「次へ」をクリックします。

  8. 選択内容を確認して、「アプリケーションを作成」をクリックします。

Application Builderのホームページが表示されます。

アプリケーション・プロキシ・サーバー・アドレスの指定

インターネットのアクセスにプロキシ・サーバーが必要な環境の場合は、Webサービス参照を作成する前に「アプリケーション属性」ページでプロキシ・サーバー・アドレスを指定する必要があります。

アプリケーションにプロキシ・アドレスを指定するには、次の手順を実行します。

  1. Application Builderのホームページで、「属性を編集」をクリックします。

  2. 「アプリケーションの定義」で、「プロキシ・サーバー」にプロキシ・サーバーを入力します。

  3. 変更を適用」をクリックします。

UDDIレジストリでのビジネス名の検索

この演習では、指定した銘柄記号に基づいて株価を表示するフォームを作成します。 UDDIレジストリでビジネス名を検索して、Webサービス参照を作成します。

ビジネス名を検索してWebサービス参照を作成するには、次の手順を実行します。

  1. Application Builderのホームページにナビゲートします。

  2. 共有コンポーネント」をクリックします。

  3. 「ロジック」で、「Webサービス参照」を選択します。

    「Webサービス参照」ページが表示されます。

  4. 作成」をクリックします。

  5. WSDLを検出するためにUDDIレジストリを検索するかどうかを尋ねるプロンプトが表示されたら、「はい」を選択して「次へ」をクリックします。

  6. 「UDDIの位置」で、「IBM UDDI」を選択して「次へ」をクリックします。

  7. 「サービスを検索」で、次の手順を実行します。

    1. 「検索タイプ」で、「ビジネス名」を選択します。

    2. 「名前」で、次のように入力します。

      %xMethods%
      
      
    3. 検索」をクリックします。

    4. 「一致しているサービス」で、「xMethods Delayed Stock Quotes」を選択します。

    5. 次へ」をクリックします。

    選択したWebサービスについて説明するサマリー・ページが表示されます。

  8. 選択内容を確認し、「次へ」をクリックして続行します。

    WSDLドキュメントへのURLが「WSDLの位置」フィールドに表示されます。

  9. 終了」をクリックします。

株価を表示するフォームの作成

次に、指定した銘柄記号に基づいて株価を表示するフォームを作成します。

Webサービス参照を作成した後に、フォームを作成するには、次の手順を実行します。

  1. 「追加されたWebサービス参照」ページで、「Webサービスのフォームを作成」を選択します。

  2. 「Webサービス参照と操作」で、次の手順を実行します。

    1. 「Webサービス参照」で、「XMethods Delayed Stock Quotes」を選択します。

    2. 「操作」で、「getQuote」を選択します。

    3. 次へ」をクリックします。

  3. 「ページおよびリージョン属性を指定」で、デフォルトを受け入れて「次へ」をクリックします。

    1. 「リージョン・タイトル」に、「株価情報を取得」と入力します。

    2. その他のデフォルトを受け入れます。

    3. 次へ」をクリックします。

  4. 「入力パラメータのアイテム」で、デフォルトを受け入れて「次へ」をクリックします。

  5. 「出力パラメータのアイテム」で、次の手順を実行します。

    1. 「アイテム・ラベル」に、「株価」と入力します。

    2. その他のデフォルトを受け入れます。

    3. 終了」をクリックします。

  6. ページを実行」をクリックして、フォームを表示します。

  7. ログイン・ページで、作業領域のユーザー名およびパスワードを入力して「ログイン」をクリックします。

    図6-1に示すようなフォームが表示されます。

    図6-1 株価を取得するフォーム




  8. フォームをテストします。 「Symbol」に、銘柄記号(ORCLなど)を入力して「送信」をクリックします。

    「株価」フィールドに、対応する株価が表示されます。

  9. 「開発者」ツールバーから「アプリケーションを編集」を選択して、Application Builderのホームページに戻ります。

UDDIレジストリでのサービス名の検索

次に、先物市場を表示するフォームを作成します。 この演習では、UDDIレジストリでサービス名を検索して、Webサービス参照を作成します。 その後で、フォームとレポートを作成します。

サービス名を検索して、新しいWebサービスを作成するには、次の手順を実行します。

  1. Application Builderのホームページにナビゲートします。

  2. 共有コンポーネント」をクリックします。

    「共有コンポーネント」ページが表示されます。

  3. 「ロジック」で、「Webサービス参照」を選択します。

    「Webサービス参照」ページが表示されます。

  4. 作成」をクリックします。

  5. WSDLを検出するためにUDDIレジストリを検索するかどうかを尋ねるプロンプトが表示されたら、「はい」を選択して「次へ」をクリックします。

  6. 「UDDIの位置」で、「XMethods UDDI」を選択して「次へ」をクリックします。

  7. 「サービスを検索」で、次の手順を実行します。

    1. 「検索タイプ」で、「サービス名」を選択します。

    2. 「名前」に、xigniteと入力して「検索」をクリックします。

      これは、マーケット・ニュース用の検索エンジンです。

    3. 「一致しているサービス」で、「XigniteFutures」を選択します。

    4. 次へ」をクリックします。

    選択したWebサービスについて説明するサマリー・ページが表示されます。

  8. 選択内容を確認し、「次へ」をクリックして続行します。

    「WSDLの位置」フィールドに、WSDLドキュメントへのURLが表示されます。

  9. 終了」をクリックします。

Webサービス参照(XigniteFutures)がWebサービス参照リポジトリに追加されます。

フォームとレポートの作成

次に、フォームとレポートが含まれるページを作成する必要があります。

Webサービス参照を作成した後に、フォームとレポートを作成するには、次の手順を実行します。

  1. 「追加されたWebサービス参照」ページで、「Webサービスのフォームとレポートを作成」を選択します。

  2. 「Webサービス参照と操作」で、次の手順を実行します。

    1. 「Webサービス参照」で、「XigniteFutures」を選択します。

    2. 「操作」で、「ListFuturesByExchange」を選択します。

    3. 次へ」をクリックします。

  3. 「ページおよびリージョン属性を指定」で、次の手順を実行します。

    1. 「フォーム・リージョン・タイトル」を、「先物を取引市場で一覧」に変更します。

    2. その他のデフォルトを受け入れて「次へ」をクリックします。

  4. 「入力パラメータのアイテム」で、次の手順を実行します。

    1. P2_USERNAME、P2_PASSWORD、P2_TRACERでは、「作成」列で「いいえ」を選択します。

    2. P2_EXCHANGEでは、「作成」列でデフォルトの「はい」を受け入れます。

    3. 次へ」をクリックします。

  5. 「ベース・ノード」で、次の手順を実行します。

    1. 「一時結果セット名(コレクション)」で、デフォルトを受け入れます。

    2. 「レポート対象の結果ツリー」で、「Future (tns:Future)」を選択します。

    3. 次へ」をクリックします。

  6. 「表示する結果パラメータ」で、すべてのパラメータを選択して「終了」をクリックします。

  7. ページを実行」をクリックして、フォームを表示します。

  8. ログイン・ページが表示されたら、作業領域のユーザー名およびパスワードを入力して「ログイン」をクリックします。

    図6-2に示すようなフォームとレポートが表示されます。 ページの上部にある「先物を取引市場で一覧」フォームには、データ・エントリ・フィールドおよび「送信」ボタンがありますが、「Results」レポートには、データはありません。

    図6-2 取引所別の先物リストのフォームとデータのないレポート




  9. フォームをテストします。 「Exchange」に、NYMEXと入力して「送信」をクリックします。

    ページの下部にあるレポートは、図6-3のようになります。 レポートには、ニューヨーク商品取引所(NYMEX)の先物の記号、名前、月、年が表示されます。

    図6-3 取引所別の先物リストのフォームとデータのあるレポート