Oracle® Fusion Middleware Oracle Reports ServicesレポートWeb公開ガイド 11g リリース 1 (11.1.1) B61375-04 |
|
![]() 前 |
![]() 次 |
Oracle Reportsでは、RWWebService
という名前のWebサービスが公開されます。このWebサービスの詳細は、第19章「Oracle ReportsのWebサービスの使用」を参照してください。Oracle ReportsのWebサービスは、基本的には同期して動作しますが、BPELプロセスではパートナ・リンクとして使用できます。
Oracle ReportsのWebサービスをBPELプロセスで非同期で起動する手順は、次のとおりです。
Oracle Reportsの同期Webサービスを使用する中間非同期BPELプロセスを作成し、コール元がコールバックするためのインタフェースを用意します。
SOA Suiteにこの中間非同期BPELプロセスをサービスとしてデプロイします。このサービスはパートナ・リンクとして使用できます。
次の場所でOracle ReportsのWebサービスのWSDLにアクセスできます。
http://yourwebserver:port/reports/rwwebservice?
WSDLには、RWWebservice
の様々な起動方法に関する情報が格納されています。XSDファイルには次の場所でアクセスできます。
http://yourwebserver:port/reports/rwwebservice?xsd=1
XSDファイルをローカル・マシンに保存して、BPELプロセスを作成する際に使用できます。
RWWebServiceを使用してジョブをOracle Reportsサーバーに送信する手順は、次のとおりです。
Oracle JDeveloperをインストールします。詳細は、Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイドを参照してください。
OracleAS SOAをインストールします。
SOAスイートを起動します。
Oracle JDeveloperからSOAスイートへの接続を作成します。
新規アプリケーションを作成します。
新しく非同期BPELプロセス・プロジェクトを作成し、RWWebservice.xsd
ファイルを使用して、BPELプロセスの入出力パラメータを定義します。
RWWebService
のWSDLを参照するパートナ・リンクを作成します。
Oracle JDeveloperからの要求に応じて「はい」をクリックし、パートナ・リンク・タイプを作成します。
「パートナ・ロール」を選択します。
プロセスで有効範囲を作成します。
有効範囲内でInvokeアクティビティを作成し、それを使用してRWWebService
パートナ・リンクに対するrunJob操作を起動します。
入力変数と出力変数が自動的に作成されます。入力パラメータはRWWebServiceのrunJob
操作の入力として使用され、出力パラメータにはrunJob操作の出力が格納されます。
この有効範囲内で、Invokeアクティビティの前に、Assignアクティビティを作成します。
このAssignアクティビティで、RWWebService
に必要なパラメータにユーザー入力パラメータをマップします。
Param0にレポート・ジョブ・コマンド(文字列)を設定します。
Param1にtrue
(ジョブ送信を同期する必要があることを指定するブール値)を設定します。
この有効範囲内で、Invokeアクティビティの後に、Assignアクティビティを作成します。このAssignアクティビティで、Invokeアクティビティの出力変数を、クライアントに書き戻される結果変数にマップします。
SOAスイートのBPELプロセスをコンパイルしてデプロイします。
Oracle BPEL Process Managerコンソールを使用して、BPELプロセスを実行します。
このBPELプロセスを別のBPELプロセスで使用して、BPELプロセスからジョブをReports Serverに非同期に送信できます。
重要: 第8.10.1項のステップ2から11を完了するには、次のドキュメントを参照してください。
|
ジョブをReports ServerにBPELプロセスから非同期に送信する手順は、次のとおりです。
新しく非同期BPELプロセス・プロジェクトを作成し、RWWebservice.xsd
ファイルを使用して、BPELプロセスの入出力パラメータを定義します。
新しく作成したBPELプロセスのWSDLを参照するパートナ・リンクを作成します。
Oracle JDeveloperからの要求に応じて「はい
」をクリックし、パートナ・リンク・タイプを作成します。
「パートナ・ロール」を選択します。
プロセスで有効範囲を作成します。
有効範囲内でInvokeアクティビティを作成し、それを使用して中間プロセスのパートナ・リンクに対するrunJob操作を起動します。
入力変数が自動的に作成されます。入力パラメータは中間BPELプロセスのrunJob操作の入力として使用されます。
中間プロセスからコールバックを受け取るReceiveアクティビティを作成します。
この有効範囲内で、Invokeアクティビティの前に、Assignアクティビティを作成します。
このAssignアクティビティで、中間BPELプロセスに必要なパラメータにユーザー入力パラメータをマップします。
Param0にレポート・ジョブ・コマンド(文字列)を設定します。
Param1にtrue
(ジョブ送信を同期する必要があることを指定するブール値)を設定します。
有効範囲内で、Invokeアクティビティの後にReceiveアクティビティを作成します。
入力変数が自動的に作成されます。入力パラメータは、中間BPELプロセスのrunJobresponse操作からレスポンスを受け取ります。
この有効範囲内で、Invokeアクティビティの後に、Assignアクティビティを作成します。このAssignアクティビティで、Receiveアクティビティの入力変数を、クライアントに書き戻される結果変数にマップします。
SOAスイートのBPELプロセスをコンパイルしてデプロイします。
Oracle BPEL Process Managerコンソールを使用して、BPELプロセスを実行します。