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 件のコメント:
コメントを投稿