ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Reports ServicesレポートWeb公開ガイド
11g リリース 1 (11.1.1)
B61375-04
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

8.10 Oracle ReportsとOracle BPEL Process Managerとの通信の構成

Oracle Reportsでは、RWWebServiceという名前のWebサービスが公開されます。このWebサービスの詳細は、第19章「Oracle ReportsのWebサービスの使用」を参照してください。Oracle ReportsのWebサービスは、基本的には同期して動作しますが、BPELプロセスではパートナ・リンクとして使用できます。

Oracle ReportsのWebサービスをBPELプロセスで非同期で起動する手順は、次のとおりです。

次の場所でOracle ReportsのWebサービスのWSDLにアクセスできます。

http://yourwebserver:port/reports/rwwebservice?

WSDLには、RWWebserviceの様々な起動方法に関する情報が格納されています。XSDファイルには次の場所でアクセスできます。

http://yourwebserver:port/reports/rwwebservice?xsd=1

XSDファイルをローカル・マシンに保存して、BPELプロセスを作成する際に使用できます。

8.10.1 RWWebserviceを使用してジョブをReports Serverに送信する方法

RWWebServiceを使用してジョブをOracle Reportsサーバーに送信する手順は、次のとおりです。

  1. Oracle JDeveloperをインストールします。詳細は、Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイドを参照してください。

  2. OracleAS SOAをインストールします。

  3. SOAスイートを起動します。

  4. Oracle JDeveloperからSOAスイートへの接続を作成します。

  5. 新規アプリケーションを作成します。

  6. 新しく非同期BPELプロセス・プロジェクトを作成し、RWWebservice.xsdファイルを使用して、BPELプロセスの入出力パラメータを定義します。

  7. RWWebServiceのWSDLを参照するパートナ・リンクを作成します。

    • Oracle JDeveloperからの要求に応じて「はい」をクリックし、パートナ・リンク・タイプを作成します。

    • 「パートナ・ロール」を選択します。

  8. プロセスで有効範囲を作成します。

  9. 有効範囲内でInvokeアクティビティを作成し、それを使用してRWWebServiceパートナ・リンクに対するrunJob操作を起動します。

  10. 入力変数と出力変数が自動的に作成されます。入力パラメータはRWWebServiceのrunJob操作の入力として使用され、出力パラメータにはrunJob操作の出力が格納されます。

  11. この有効範囲内で、Invokeアクティビティの前に、Assignアクティビティを作成します。

    • このAssignアクティビティで、RWWebServiceに必要なパラメータにユーザー入力パラメータをマップします。

    • Param0にレポート・ジョブ・コマンド(文字列)を設定します。

    • Param1にtrue(ジョブ送信を同期する必要があることを指定するブール値)を設定します。

  12. この有効範囲内で、Invokeアクティビティの後に、Assignアクティビティを作成します。このAssignアクティビティで、Invokeアクティビティの出力変数を、クライアントに書き戻される結果変数にマップします。

  13. SOAスイートのBPELプロセスをコンパイルしてデプロイします。

  14. Oracle BPEL Process Managerコンソールを使用して、BPELプロセスを実行します。

このBPELプロセスを別のBPELプロセスで使用して、BPELプロセスからジョブをReports Serverに非同期に送信できます。


重要:

第8.10.1項のステップ2から11を完了するには、次のドキュメントを参照してください。

  • Oracle Fusion Middleware Oracle SOA Suiteインストレーション・ガイド

  • 『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』

  • Oracle SOA Suite用にFusion順序デモを実行するためのOracle Fusion Middlewareチュートリアル


8.10.2 ジョブをReports ServerにBPELプロセスから非同期で送信する方法

ジョブをReports ServerにBPELプロセスから非同期に送信する手順は、次のとおりです。

  1. 新しく非同期BPELプロセス・プロジェクトを作成し、RWWebservice.xsdファイルを使用して、BPELプロセスの入出力パラメータを定義します。

  2. 新しく作成したBPELプロセスのWSDLを参照するパートナ・リンクを作成します。

    • Oracle JDeveloperからの要求に応じて「はい」をクリックし、パートナ・リンク・タイプを作成します。

    • 「パートナ・ロール」を選択します。

  3. プロセスで有効範囲を作成します。

  4. 有効範囲内でInvokeアクティビティを作成し、それを使用して中間プロセスのパートナ・リンクに対するrunJob操作を起動します。

  5. 入力変数が自動的に作成されます。入力パラメータは中間BPELプロセスのrunJob操作の入力として使用されます。

  6. 中間プロセスからコールバックを受け取るReceiveアクティビティを作成します。

  7. この有効範囲内で、Invokeアクティビティの前に、Assignアクティビティを作成します。

    • このAssignアクティビティで、中間BPELプロセスに必要なパラメータにユーザー入力パラメータをマップします。

    • Param0にレポート・ジョブ・コマンド(文字列)を設定します。

    • Param1にtrue(ジョブ送信を同期する必要があることを指定するブール値)を設定します。

  8. 有効範囲内で、Invokeアクティビティの後にReceiveアクティビティを作成します。

  9. 入力変数が自動的に作成されます。入力パラメータは、中間BPELプロセスのrunJobresponse操作からレスポンスを受け取ります。

  10. この有効範囲内で、Invokeアクティビティの後に、Assignアクティビティを作成します。このAssignアクティビティで、Receiveアクティビティの入力変数を、クライアントに書き戻される結果変数にマップします。

  11. SOAスイートのBPELプロセスをコンパイルしてデプロイします。

  12. Oracle BPEL Process Managerコンソールを使用して、BPELプロセスを実行します。