ヘッダーをスキップ
Oracle Web Services Manager管理者ガイド
10g(10.1.3.3.0)
E05572-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

2 Oracle Web Services Manager GatewayへのWebサービスの登録

この章では次の項について説明します。

Oracle Web Services Manager GatewayへのWebサービスの登録

Oracle Web Services Manager Gatewayのポリシーを作成および編集する前に、目的のWebサービスをまず登録する必要があります。次に、ゲートウェイにWebサービスを登録する一般的な方法について説明します。

サービスを登録するには、Web Services Definition Language(WSDL) URLを指定するか、サービスをインポートします。WSDL URLの指定によるサービスの登録の詳細は、「Oracle Web Services Manager Gatewayへのサービスの追加」を参照してください。インポートによるサービスの登録の詳細は、「Webサービスの検出」を参照してください。

プロキシ設定

外部のURLを指定してWebサービスをインポートする場合、HTTPプロキシ設定を設定する必要があります。スタンドアロンのOracle WSMインストールの場合、OWSM_HOME/owsm/bin/coresv.propertiesファイルで設定します。Oracle SOA Suite(10.1.3.1.0)としても知られるOracle Application Server 10gリリース3(10.1.3.1.0)の一部としてOracle WSMをインストールした場合、ORACLE_HOME/opmn/conf/ompn.xmlファイルでプロキシ設定を設定します。詳細は、「WSILインポート時のエラー」を参照してください。

SSLが有効なサイトからのWSDLの登録

Secure Sockets Layer(SSL)が有効なサイトからWSDLをインポートする場合(つまり、WSDLがHTTPS URLを使用する場合)、Oracle Web Services Managerサーバーの起動時にSSLを有効にする必要があります。ORACLE_HOME/owsm/scripts/oc4j.xmlファイルのoc4j.startターゲットにSSLシステム属性を追加します。

仮想化Webサービスへのアクセス

仮想化Webサービスにアクセスするには、サービス識別子(ID)またはWebサービス名を使用します。したがって、次のいずれかのURLを使用して、サービスIDがSID0003006のWebサービスTimeServiceにアクセスできます。

URLの命名規則が適用されます。

Oracle Web Services Manager Gatewayへのサービスの追加

ゲートウェイにWebサービスを追加するには

  1. Web Services Manager Controlから「ポリシー管理」を選択して、「サービスの登録」を選択します。

    Web Services Manager Controlに、現在登録されているゲートウェイのリストが表示されます。

  2. Webサービスを登録するゲートウェイの「サービス」をクリックします。

    Web Services Manager Controlには、ゲートウェイに現在登録されているWebサービスのリストが表示されます。

  3. 「新規サービスの追加」をクリックします。

  4. 新規サービスの詳細を入力します。フィールドに関する情報を取得するには、「ヘルプ」をクリックします。

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

    Web Services Manager Controlに、選択したWebサービス・トランスポート・プロトコル(送信トランスポート・プロトコルとも呼ばれる)を構成する「新規サービスのメッセンジャ・ステップを構成」ページが表示されます。詳細は、「Oracle WSMのトランスポート・プロトコル」を参照してください。

  6. 必要に応じてフィールドを構成します。

    プロトコル・パラメータに関するヘルプを表示するには、疑問符(?)をクリックします。この情報については、「送信トランスポート・プロトコルの構成」で説明します。

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

    サービスの確認メッセージが表示されます。

  8. 「OK」をクリックします。

    ゲートウェイにサービスを追加すると、現在登録されているゲートウェイの一覧ページに「ポリシーのコミット」が赤で表示され、新しい情報で「ポリシー・マネージャ」を更新するよう求められます。

  9. 変更したポリシーをそのゲートウェイで更新するには、「コミット」をクリックします。

ゲートウェイにサービスを追加した後に、サービスのポリシーを編集できます。詳細は、第5章「Oracle Web Services Managerのポリシー管理」を参照してください。

クライアント・リクエストでのWebサービスIDの使用

Webサービスを登録する場合、Oracle WSMはそのWebサービスにサービスIDを割り当てます。サービスIDをメッセージ・リクエストに含めることができるように、該当のWebサービスに対してリクエストを行うクライアントにこのサービスIDを提供します。サービスIDは次のいずれかの方法で指定できます。

あるいは、サービスIDではなくWebサービス名を使用して、クライアント・リクエストでWebサービスを特定することもできます。たとえば、次のどちらのURLを使用しても、サービスIDがSID0003006のWebサービスTimeServiceを特定できます。

Oracle WSMのトランスポート・プロトコル

図2-1に示すように、トランスポート・プロトコルは2箇所で使用されます。1つは、リクエストを行うクライアントとリクエストをリスニングするOracle WSM Gatewayの間です。ゲートウェイがクライアント・リクエストをリスニングするときのプロトコルを、受信トランスポート・プロトコルといいます。もう1つは、Oracle WSM GatewayとWebサービスの間です。これはWebサービスを起動するときのトランスポート・プロトコルです。別の方法で表現すると、ゲートウェイがWebサービスにリクエストを送信するときのトランスポート・プロトコルでもあります。これを送信トランスポート・プロトコルといいます。

図2-1 Oracle WSMのトランスポート・プロトコル

図2-1の説明が続きます。
「図2-1 Oracle WSMのトランスポート・プロトコル」の説明

受信トランスポート・プロトコルと送信トランスポート・プロトコルは、それぞれ独立しています。この2つのトランスポート・プロトコルは異なります。これらが存在する場合、ゲートウェイはクライアント・リクエストを取得して、リクエストを送信トランスポート・プロトコルに変換してから、Webサービスに渡します。たとえば、図2-1では、JMSで受信するリクエストはHTTPに変換されてからWebサービスに渡されます。ただし、HTTPで受信するリクエストは、送信トランスポート・プロトコルと一致するため変換は不要です。

受信トランスポート・プロトコルと送信トランスポート・プロトコルは別々に構成され、異なるプロパティ・ファイルを使用します。送信トランスポート・プロトコルは、Web Services Manager Controlで構成されます。これについては次の項で説明します。

受信トランスポート・プロトコルの構成

Oracle WSM Gatewayを作成および登録すると、デフォルトではHTTPでリクエストを受け付けるように構成されます。これは変更できません。したがって、ゲートウェイは常にHTTPでリクエストを受け付けます。また、その他にサポートされる2つのトランスポート・プロトコル(JMSおよびMQ)でリクエストをリスニングするようにゲートウェイを構成できます。JMSおよびMQのプロトコルでクライアント・リクエストを受信する場合、JMSおよびMQのリクエストをリスニングするようにゲートウェイを具体的に構成する必要があります。

JMSまたはMQでリクエストをリスニングするようにOracle WSM Gatewayを構成するには、次のファイルを手動で構成します。

ORACLE_HOME/owsm/config/gateway/gateway-config-installer.properties

このファイルでJMSおよびMQのいずれか、または両方のプロトコルのプロパティを設定します。次に、設定が有効になるようにゲートウェイ・アプリケーションを再デプロイします。そのゲートウェイに登録されたすべてのサービスが、構成したプロトコルで受信するリクエストとHTTPで受信するリクエストで使用できます。受信トランスポート・プロトコルの構成方法の詳細は、『Oracle Web Services Managerデプロイメント・ガイド』を参照してください。

送信トランスポート・プロトコルの構成

送信トランスポート・プロトコル(Webサービスを起動するときのトランスポート・プロトコル)は、ゲートウェイにサービスを登録するときに構成します。HTTP、HTTPS、JMS、MQまたはカスタム・プロトコルのいずれかを指定します。

カスタム・プロトコルを指定する場合は、まず、該当のWebサービスと通信するためのプロトコルを実装するカスタム・ポリシー・ステップを作成する必要があります。次に、サービスを登録するときに、「カスタム・プロトコルのステップ・テンプレートID」プロパティでこのポリシー・ステップを指定します。カスタム・ポリシー・ステップの作成の詳細は、『Oracle Web Services Manager拡張ガイド』を参照してください。

1つのゲートウェイに複数の受信トランスポート・プロトコルを構成する場合、登録されているすべてのWebサービスがすべてのプロトコルに公開されます。この場合、特定のプロトコルのみでリクエストを受け付けるようにWebサービスを構成することはできません。ゲートウェイは常にHTTPでリクエストを受け付けるため、WebサービスはHTTPでリクエストに公開されます。図2-1に示す例では、ゲートウェイはJMSとMQでもクライアント・リクエストをリスニングするように構成されています。したがって、図2-1の場合、WebサービスはHTTP、JMSおよびMQのいずれのプロトコルで送られたリクエストもすべて受け付けることになります。

送信トランスポート・プロトコルの構成の詳細は、「Oracle Web Services Manager GatewayへのWebサービスの登録」を参照してください。

HTTPおよびHTTPS

ゲートウェイにWebサービスを登録する際、そのWebサービスの起動に使用するプロトコル(送信トランスポート・プロトコル)としてHTTP(S)を指定する場合は、次に示すプロトコルのプロパティ(表2-1)を設定します。(これらのプロパティを指定する手順の詳細は、「ゲートウェイにWebサービスを追加するには」を参照してください。)

表2-1 HTTP(S)のプロパティ

プロパティ 説明

有効

trueに設定されている場合、このステップは有効です。

URL

WebサービスのエンドポイントURL。

ReplyTimeout

ゲートウェイがタイムアウトするまでにWebサービスに接続を試行する時間(ミリ秒)。

IsSoapService

trueに設定されている場合、WebサービスがSOAPメッセージをサポートすることを示します。falseに設定されている場合、WebサービスはXMLメッセージのみを受け付けます。

ForwardCredentials

trueに設定されている場合、HTTPの基本資格証明が転送されることを示します。

フェイルオーバーURL

URLプロパティで指定したプライマリURLが、試行プロパティで指定した試行回数内で成功しなかった場合、ゲートウェイはカンマで区切られたこのリストのURLに接続を試みます。

試行

ゲートウェイが1つのURLでサービスを起動する試行回数。

RetryInterval

再試行から次の再試行までの時間(秒)。

KeepAlive

trueに設定されている場合、HTTP接続が再利用されることを示します。


JMSメッセンジャ

JMSリクエスト・ハンドラは、JMSサービスの登録時にそのサービスに割り当てられるサービスIDに基づいて、指定したWebサービスにリクエストを転送します。JMSサービスIDは、JMSメッセージ・ヘッダーに指定する文字列です。Oracle WSM Gatewayは、サービスの登録時に指定したJMSプロパティを読み取り、指定したサーバーにメッセージを転送します。表2-2に、登録時に指定するJMSメッセンジャのプロパティを示します。

ゲートウェイにWebサービスを登録する際、そのWebサービスの起動に使用するプロトコル(送信トランスポート・プロトコル)としてJMSメッセンジャを指定する場合は、サービス起動が目的のJMSサーバーにルーティングされるよう、次に示すプロトコルのプロパティ(表2-1)を設定します。(これらのプロパティを指定する手順の詳細は、「ゲートウェイにWebサービスを追加するには」を参照してください。)

表2-2 JMSメッセンジャのプロパティ

プロパティ 説明

有効

trueに設定されている場合、このステップは有効です。

OneWay

trueに設定されている場合、ゲートウェイはJMSに同期リクエストを送信した後、接続を終了します。レスポンスがある場合でも、無視します。

ReplyTimeout

ゲートウェイがタイムアウトするまでにWebサービスに接続を試行する時間(ミリ秒)。

IsSoapService

trueに設定されている場合、WebサービスがSOAPメッセージをサポートすることを示します。falseに設定されている場合、WebサービスはXMLメッセージのみを受け付けます。

JmsQueueName

Webサービスがリスニングするキューの名前。

JmsReplyToQueueName

Webサービスがレスポンスを送信するキューの名前。値がDynamicに指定されている場合、レスポンスは一時キューに送信されます。

JmsIsPersistent

trueに設定されている場合、メッセージはJMSサーバーが再起動する間持続します。

JmsCorrEnabled

trueに設定されている場合、リクエストとレスポンスは互いに関連付けられます。

UseJndi

trueに設定されている場合、Java Naming and Directory Interface(JNDI)参照が実行されます。

JmsUrl

JMSサーバーへの接続に使用するURL。

JmsConnectionFactory

JMSサーバー接続を開くためのConnectionFactoryクラス名またはJNDI名。

JmsUsername

JMSサーバーへの接続に使用するユーザー名。

JmsPassword

JMSサーバーへの接続に使用するパスワード。

OwsmServiceID

内部使用に限定されます。この値を編集しないでください。

JndiProviderUrl

JNDIコンテキストを取得するJNDIプロバイダURL。

JndiProviderFactory

JNDIコンテキストの取得に使用するJNDIプロバイダ・ファクトリ・クラス。Javaクラスのフルパスを指定する必要があります。たとえば、com.tibco.tibjms.TibjmsQueueConnectionFactoryを指定します。

JndiUrlPackagePrefix

JNDIコンテキストの初期化に使用する接頭辞。

JndiUsername

JNDI参照の実行に使用するユーザー名。

JndiPassword

JNDI参照の実行に使用するパスワード。

SslEnabled

trueに設定されている場合、JMSサーバーへの接続にSSLが使用されます。

SslVendor

SSL証明書のベンダー。有効な値は、j2se(Java 2 Platform, Standard Edition)およびentrust6(Entrust for TIBCO JMS)です。

SslHostname

JMSサーバーのSSL証明書のホスト名。

SslClientIdentity

クライアント証明書のフルパス。

SslPassword

識別ファイルを復号化するパスワード。

SslTrustCerts

JMSサーバーの信頼証明書、またはその証明書ファイルのパス。


MQシリーズ

ゲートウェイにWebサービスを登録する際、そのWebサービスの起動に使用するプロトコル(送信トランスポート・プロトコル)としてMQシリーズを指定する場合は、サービス起動が適切なMQサーバーにルーティングされるよう、次に示すプロトコルのプロパティ(表2-1)を設定します。(これらのプロパティを指定する手順の詳細は、「ゲートウェイにWebサービスを追加するには」を参照してください。)

表2-3 MQシリーズのプロパティ

プロパティ 説明

有効

trueに設定されている場合、このステップは有効です。

MqServerHost

MQサーバーのホスト名。

MqServerPort

MQサーバーがWebサービス・リクエストをリスニングするポート。

MqUserId

MQサーバーにログインするためのユーザーID。

MqPassword

MQサーバーにログインするためのパスワード。

ChannelName

ターゲットのキュー・マネージャでの接続先チャネルの名前。

QueueManager

キューを定義するキュー・マネージャの名前。

ReplyTimeout

ゲートウェイがタイムアウトするまでにWebサービスに接続を試行する時間(ミリ秒)。

IsSoapService

trueに設定されている場合、WebサービスがSOAPメッセージをサポートすることを示します。falseに設定されている場合、WebサービスはXMLメッセージのみを受け付けます。

MqReplyToQueueName

Webサービスがレスポンスを送信するキューの名前。

MqQueueName

Webサービスがリクエストをリスニングするキューの名前。

MqCorrEnabled

trueに設定されている場合、リクエストとレスポンスは互いに関連付けられます。

MqCharacterSet

MQサーバーに送信されるメッセージのエンコードに使用するキャラクタ・セット。


Webサービスのプロトコルの変更

Webサービスのトランスポート・プロトコルを変更する場合、最初にそのサービスを非アクティブ化してから、新しいプロトコルでサービスを登録する必要があります。詳細は、「Webサービスの非アクティブ化」を参照してください。

HTTPSを使用した接続の保護

Oracle WSM環境のすべての通信ポイント間でパスワードの送信を保護するには、HTTPSを使用することをお薦めします。Webサービスに対するHTTPSの構成方法の詳細は、「HTTPおよびHTTPS」を参照してください。

JMSサーバーのフェイルオーバー

Oracle WSMは、TIBCOの場合のみ、JMSサーバーのフェイルオーバーをサポートします。次の2つのフェイルオーバー・メカニズムがあります。