メール送信機能サポート

v3.2ではメール送信サポートも目玉のひとつ。で、どんなことが実現できるかというとこんな感じ。

  1. ActionHandlerを使ってのメール送信
  2. メールノードを使ってのメール送信
  3. タスクアサイン時のNotifierとしてのメール送信
  4. Reminderとしてのメール送信

ActionHandlerを使った場合のXML上の定義はこんな感じで指定できる。


 check reports I sent yesterday
 No More Taxes

メールノードでの送信の動作も一緒で、違うのはノードとしてグラフにしたときに見た目でわかるようにするか否かだけ。で、これらの内容はprocessdefinition.xmlに直でかけるけど、普通はしない。メール送信内容が変わるたびにprocessdefinition.xml直してdeployなんてありえない。そこで用意されているのがmail template機能。こんな感じ



 
  #{taskInstance.actorId}
  Task '#{taskInstance.name}'
  
  
 


って感じで外だし可能になっている。

で、Notifierはtask-nodeの指定で「notify="yes"」ってするだけ。


 
 

で、grandmaにメールが送信される。
更にReminderとして使いたい場合は、


を上記task-nodeに付け足せばOK.

jBPM-identityを駆使すればactorId,swimlaneとメアドのresolveの幅が広がる。またResolverの拡張ポイントもあるから自作すればそれなりのことには対応できそう。