19.7 レガシーWebサービスの管理
レガシーWebサービスを使用すると、プラットフォームおよび言語に依存しない環境で、Webを介したアプリケーション間の通信が可能になります。
ノート:
SOAP 1.1仕様はW3C技術ノートです。SOAPバージョン1.2仕様はW3C勧告です。
Simple Object Access Protocol(SOAP)については、次の場所を参照してください。
http://www.w3.org/TR/SOAP/
- Webサービスについて
- Webサービス参照の作成
- SSL有効Webサービスでの作業について
- WSDLに基づいたWebサービス参照の作成
- Webサービス参照の手動作成
- RESTful Webサービス参照の作成
- Webサービス参照リポジトリの使用
- Webサービスでの入力フォームとレポートの作成
- Webサービスでのフォームの作成
- Webサービスでのレポートの作成
- Webサービスをプロセスとして起動する方法
- Webサービス参照履歴の表示
親トピック: アプリケーション・データの管理
19.7.1 Webサービスについて
通常のWebサービス・シナリオでは、ビジネス・アプリケーションが、HTTPプロトコルを使用して、特定のURLにあるサービスに対してリクエストを送信します。サービスは、リクエストを受信すると、これを処理し、レスポンスを返します。外部Webサービスへのコールをアプリケーション・ビルダーで開発されたアプリケーションに組み込むことができます。
通常、Webサービスは、Simple Object Access Protocol(SOAP)またはRepresentational State Transfer(REST)アーキテクチャに基づいています。SOAPは、World Wide Web Consortium (W3C)が策定した、インターネットを介したリクエストとレスポンスの送受信用の標準プロトコルです。SOAPメッセージは、サービス・プロバイダとサービス・ユーザー間でSOAPエンベロープに入れて送受信できます。RESTful Webサービスはリソース指向です。WebサービスのスコープはURI内から検出され、サービスのメソッドは使用されるHTTPメソッドによって記述されます。これらのHTTPメソッドには、GET、POST、PUT、HEADおよびDELETEなどがあります。
SOAPには、主に2つのメリットがあります。
-
SOAPはXMLをベースとしており、使用方法も容易です。
-
このプロトコルではHTTPなどの単純な転送プロトコルが使用されているため、SOAPメッセージはファイアウォールでブロックされることはありません。
ヒント:
Oracle Application ExpressをOracle Database 11g リリース1 (11.1)以上とともに実行する場合は、Webサービスを使用するためにネットワーク・サービスを有効にする必要があります。
RESTには、同様のメリットがあります。
-
このプロトコルではHTTPプロトコルが使用されるため、RESTメッセージもファイアウォールでブロックされません。
-
RESTリクエストではXMLエンベロープやSOAPエンベロープのオーバーヘッドが不要であり、入力は、通常、URI内に指定されます。
親トピック: レガシーWebサービスの管理
19.7.2 Webサービス参照の作成
Oracle Application ExpressでWebサービスを使用するには、ウィザードを使用してWebサービス参照を作成します。Webサービス参照は、Web Services Description Language(WSDL)ドキュメントに基づくか、RESTfulスタイルに基づくか、サービスに関する情報を指定して手動で作成することができます。
19.7.2.1 Webサービス参照ページへのアクセス
Webサービス参照は、Webサービス参照ページで管理します。
Webサービス参照ページにアクセスするには:
親トピック: Webサービス参照の作成
19.7.2.2 アプリケーション・プロキシ・サーバー・アドレスの指定
インターネットのアクセスにプロキシ・サーバーが必要な環境の場合は、Webサービス参照を作成する前にアプリケーション属性ページでプロキシ・サーバー・アドレスを指定するか、インスタンス管理者がインスタンス・プロキシを定義する必要があります。
アプリケーションにプロキシ・アドレスを指定するには:
親トピック: Webサービス参照の作成
19.7.3 SSL有効Webサービスでの作業について
Secure Sockets Layer(SSL)は、RSA公開キーによる暗号化と対称キーによる暗号化を使用して、認証、暗号化およびデータの整合性を実現する業界標準プロトコルです。
通信する必要のあるWebサービスがSSL有効Webサービスの場合(つまり、Webサービスに対するURLにhttps
と表示される)、ウォレットを作成し、そのウォレットがOracle Application Expressによって使用されるように構成する必要があります。ウォレットは、SSLに必要な認証および署名された資格証明(秘密キー、証明書および信頼できる証明書)の格納に使用されるパスワード保護されたコンテナです。
関連項目:
Oracle Application Express管理ガイドの「ウォレット情報の構成」
親トピック: レガシーWebサービスの管理
19.7.4 WSDLに基づいたWebサービス参照の作成
Web Services Description Language (WSDL)ドキュメントに基づいてWebサービス参照を作成できます。
親トピック: レガシーWebサービスの管理
19.7.4.1 WSDLに基づいたWebサービス参照の作成について
WSDLに基づいてWebサービス参照を作成する前に、WSDLの位置の特定方法を決定する必要があります。WSDLドキュメントにURLを入力して、WSDLの位置を特定します。
続いてウィザードを実行すると、WSDLが分析され、有効なSOAPメッセージの作成に必要な次のようなすべての情報が収集されます。
-
HTTP(S)を介したSOAPリクエストのポストに使用するURL
-
SOAP HTTPリクエストを識別するUniversal Resource Identifier(URI)
-
Webサービスの操作
-
各操作の入力パラメータ
-
各操作の出力パラメータ
親トピック: WSDLに基づいたWebサービス参照の作成
19.7.4.2 WSDLドキュメントの指定によるWebサービス参照の作成
特定のWSDLドキュメントへのURLを指定して、Webサービスを作成するには:
親トピック: WSDLに基づいたWebサービス参照の作成
19.7.4.3 WSDLから作成されたWebサービス参照のテスト
Webサービス参照を作成した後、Webサービス参照のテスト・ページでテストできます。
Webサービス参照をテストするには:
関連項目:
親トピック: WSDLに基づいたWebサービス参照の作成
19.7.5 Webサービス参照の手動作成
Webサービス参照を手動作成できます。
19.7.5.1 Webサービス参照の手動作成について
手動でWebサービス参照を作成する場合、必要な情報を指定して、次を含んだ有効なSOAPリクエストを作成します。
-
HTTP(S)を介したSOAPリクエストのポストに使用するURL
-
SOAP HTTPリクエストを識別するUniversal Resource Identifier(URI)
-
アイテムの置換を含んだリクエストのSOAPエンベロープ
-
オプションで、Webサービスからのレスポンスを格納するコレクション名
親トピック: Webサービス参照の手動作成
19.7.5.2 手動によるWebサービス参照の作成
Webサービス参照を手動で作成すると、Webサービス参照リポジトリに追加されます。
Webサービス参照を手動作成するには:
- Webサービス参照ページにナビゲートします。
- ワークスペースのホームページで、「アプリケーション・ビルダー」をクリックします。
- 既存のアプリケーションを選択します。
- アプリケーションのホームページで、ページの中央にある「共有コンポーネント」をクリックします。
- 「データ・ソース」で「レガシーWebサービス参照」を選択します。
- 「作成」をクリックします。
- 「手動」を選択し、「次へ」をクリックします。
- 「Webサービス参照の作成」で次のステップを実行します。
関連項目:
親トピック: Webサービス参照の手動作成
19.7.5.3 手動作成されたWebサービス参照のテスト
Webサービス参照を作成した後、Webサービス参照のテスト・ページでテストできます。
Webサービス参照をテストするには:
関連項目:
親トピック: Webサービス参照の手動作成
19.7.6 RESTful Webサービス参照の作成
Representational State Transfer (REST) Webサービス、すなわちRESTful Webサービスを作成できます。
19.7.6.1 RESTful Webサービス参照の作成について
RESTful Webサービスはリソース指向です。WebサービスのスコープはURI内から検出され、サービスのメソッドは使用されるHTTPメソッドによって記述されます。これらのHTTPメソッドには、GET、POST、PUT、HEADおよびDELETEなどがあります。RESTful Webサービス参照を作成する場合、次を含むリクエストおよびレスポンスの構造に関する必要な情報を指定します。
-
RESTfulリクエストを識別するUniversal Resource Identifier(URI)
-
Webサービスのメソッドを識別するHTTPメソッド
-
リクエストの一部であるHTTPヘッダー(必要に応じて)
-
Webサービスに必要な入力のタイプ
-
レスポンスの書式およびレスポンス・パラメータの識別方法
親トピック: RESTful Webサービス参照の作成
19.7.6.2 RESTful Webサービス参照の作成
RESTful Webサービス参照を作成するには:
Webサービス参照の作成成功ページが表示されます。Webサービス参照がWebサービス参照リポジトリに追加されます。
関連項目:
-
『Oracle Application Express管理ガイド』のインスタンス用のプロキシ・サーバーの作成に関する項
親トピック: RESTful Webサービス参照の作成
19.7.6.3 REST Webサービス参照のテスト
Webサービス参照を作成した後、Webサービス参照のテスト・ページでテストできます。
Webサービス参照をテストするには:
関連項目:
親トピック: RESTful Webサービス参照の作成
19.7.7 Webサービス参照リポジトリの使用
Webサービス参照がWebサービス参照リポジトリに格納されます。
Webサービス参照リポジトリにアクセスするには:
関連項目:
親トピック: レガシーWebサービスの管理
19.7.8 Webサービスでの入力フォームとレポートの作成
この項では、Webサービスの入力フォームとレポートを作成する方法について説明します。
19.7.8.1 Webサービスのフォームとレポートの作成ウィザードについて
Webサービスのフォームとレポートの作成ウィザードでは、入力フォーム、送信ボタンおよび結果を表示するレポートが作成されます。WSDLまたはRESTfulスタイルWebサービスからWebサービス参照を作成した直後に、またはページを追加して、このウィザードを実行できます。
このウィザードは、Webサービスの結果が非スカラーであることが予想される場合に使用します。Amazon社のProduct API Webサービスがよい例です。このWebサービスでは、入力フォームに入力された検索基準に基づいて多くの結果が戻されます。
親トピック: Webサービスでの入力フォームとレポートの作成
19.7.8.2 新しいページの追加によるフォームとレポートの作成
既存のWebサービス参照がある場合は、新しいページを追加して、入力フォームとレポートを作成できます。
新しいページを追加して、フォームとレポートを作成するには:
関連項目:
親トピック: Webサービスでの入力フォームとレポートの作成
19.7.9 Webサービスでのフォームの作成
この項では、Webサービスのフォームを作成する方法について説明します。
19.7.9.1 Webサービスのフォームの作成ウィザードについて
Webサービスのフォームの作成ウィザードでは、フォームと送信ボタンが作成されます。WSDLから、またはRESTfulスタイルのWebサービスで、Webサービス参照を作成した後に、またはページの作成ウィザードを実行することで、このウィザードを実行できます。
このウィザードは、Webサービスの結果がスカラーであることが予想される場合に使用します。株価を調べるWebサービスがよい例です。入力は銘柄記号で、出力はスカラーの適正価格であるためです。
親トピック: Webサービスでのフォームの作成
19.7.11 Webサービスをプロセスとして起動する方法
Webサービスをページ上でプロセスとして起動することもできます。Webサービス用のいずれかのフォームの作成ウィザードを実行すると、プロセスが作成されます。このプロセスを実行すると、リクエストがサービス・プロバイダに送信されます。その後で、レポートにリクエスト結果を表示できます。
19.7.11.2 Webサービス・プロセスの編集
WSDLから作成されたWebサービス参照またはRESTfulスタイルのWeb参照でWebサービス・タイプのプロセスを作成した後、サービスへの入力パラメータおよび出力パラメータの属性を変更できます。
Webサービス・プロセスを編集するには:
関連項目:
親トピック: Webサービスをプロセスとして起動する方法
19.7.12 Webサービス参照履歴の表示
「Webサービス履歴」では、カレント・アプリケーションのWebサービス参照の変更が、アプリケーションID、Webサービス参照名、開発者および日付ごとに表示されます。
Webサービス参照の変更履歴を表示するには:
ノート:
Webサービス参照ページに「履歴」ボタンが表示されるのは、1つ以上の参照が存在する場合のみです。
親トピック: レガシーWebサービスの管理