(Oracle BPEL Process Manager 10.1.2.0.0時点の情報です)
Oracle BPEL Process Managerの運用管理ツールであるBPEL Consoleでは、次のような各種の作業を行うことができます。
このうち、BPEL開発者がよく使う機能は、BPELプロセスのテスト実行でしょう。Oracle BPEL Process Managerでは、BPELプロセスは、SOAP over HTTPのWebサービスとして公開されるので、Webサービス・クライアントを作成すれば、BPELプロセスのテストを行うことができます。
WSDLを指定してWebサービスのスタブを自動生成する機能は、多くの開発環境にありますし、JDeveloperにももちろん含まれています。とはいえ、BPELプロセスのテストをするためだけに、毎回スタブとクライアントを作成するのは、少し面倒ですね。
そこで、BPEL Consoleでは、BPELプロセスのテスト実行の機能を提供しています。テスト実行をするには、BPEL Consoleのトップ・ページ ([ダッシュボード] タブ) の [デプロイ済のBPELプロセス] から、テスト実行したいプロセスを選択します。
テスト実行ページでは、BPELプロセスのWSDLを基にして、適切なテキスト・フィールドをHTMLフォームが自動生成されています。次の画面の例は単純な例ですが、リクエスト・メッセージのXML要素が複雑にネストしたXMLである場合のも、BPEL Consoleは問題なく適切なフォームを生成してくれます。
HTMLフォームでテスト実行する際に、[デフォルトの入力として保存] オプションを選択しておけば、次回以降は、次のような、リクエスト・メッセージに含まれるXMLが自動生成されます。
HTMLフォームの多数のフィールドに入力するのが面倒な場合には、XMLデータをコピー&ペーストすることで、入力を簡略化できますね。
さらに、BPEL開発環境「Oracle BPEL Designer」で、テスト実行時のデフォルトのXMLデータを設定することもできます。これを設定しておけば、HTMLフォームで一度実行したり、毎回XMLデータをコピー&ペーストしたりしなくても、適切なXMLデータをデフォルトで生成するようにできます。
Oracle BPEL DesignerのBPEL編集エディタで、上部一番左のボタン [デプロイメント・ディスクリプタのプロパティ] ボタンをクリックします。[デプロイメント・ディスクリプタのプロパティ] ダイアログの [構成] タブで、defaultInputプロパティを新規作成し、その値としてXMLデータを設定します。
このXMLデータは、BPEL Consoleでいったんテスト実行することで生成するのが簡単でしょう。
この設定はデプロイメント・ディスクリプタ bpel.xml に格納されているはずですので、確認しておきましょう。XMLデータの可読性のため、[デプロイメント・ファイルにCDATASectionとして格納] オプションを有効にしておくといいでしょう。
<?xml version = '1.0' encoding = 'UTF-8'?> <BPELSuitcase> <BPELProcess id="BPELProcess2" src="BPELProcess2.bpel"> <partnerLinkBindings> <partnerLinkBinding name="client"> <property name="wsdlLocation">BPELProcess2.wsdl</property> </partnerLinkBinding> </partnerLinkBindings> <configurations> <property name="defaultInput"> <![CDATA[<BPELProcess2ProcessRequest xmlns="http://xmlns.oracle.com/BPELProcess2"> <input>オラクル</input> </BPELProcess2ProcessRequest>]]> </property> </configurations> </BPELProcess> </BPELSuitcase>