2010年3月1日月曜日

Oracle BPEL/Email activity

Fusion Middleware 11g の Oracle BPEL で、Emailアクティビティを使ってみる。

■ 環境
・Fusion Middleware 11g、JDeveloper 11g
・Radish 3.0.0 (SMTP サーバ)

■ サーバ設定
BPEL に含めたEmailアクティビティを動かす前に、サーバ側の設定が必要となる。これをやっておかないと、BPEL の実行そのものはエラーにならないけど、メールは送られなかったりする。

◆ 電子メール・ドライバ・プロパティ
以下のように電子メール・ドライバ・プロパティを開く。

ここで、"Outgoing"で始まるプロパティを適当に設定する。試用目的なので、OutgoingMailServer に localhost とだけ指定したが、ポートやら、SMTP認証する場合のユーザ名/パスワードやら、一通り設定できる。

◆ ワークフロー通知プロパティ
以下のようにワークフロー通知プロパティの設定ページを開く。通知モードのデフォルトは「なし」になっているので、電子メールを選択する。それだけ。

設定したら再起動。

■ BPEL定義
Emailアクティビティを含む簡単なBPELフローを定義する。
中身はこんな風に設定してみる。ドメイン名とユーザ名は Radish で定義しておく。


先に進む前に、ちょっと観察してみる。

パートナーリンク NotificationService_1 は Emailアクティビティを追加したときに勝手に生成される。

Emailアクティビティ を展開すると、内部で構成されているinvoke アクティビティから、このパートナーリンクの操作 sendEmailNotification を呼んでいるのが分かる。
NotificationService_1の wsdl を見るとバインディングに java:binding が指定されている。初めて見た。

■ 実行
デプロイして実行すると Radish の MAILBOX にメールが入っているのが分かる。

0 件のコメント:

コメントを投稿