makotan _at_ gmail dot com

ユーザの権限別に動作を変える方法

これまでの説明ではRoleは単一でしたが、複数のRoleを使って処理の流れを切り替えることが出来ます。ワークフローのサンプルとして良く出てくる承認フローを作るときに便利な機能です
フローの準備として、PackageのPerticipantsにNameで権限を入れてください。それとユーザの情報とその権限が同一かどうかの判定が出来る必要があります。Typeは普段はRoleを選択してください。
XPDLをぶりに読み込ませるところの3つめの引数にParticipantProviderを実装したコンポーネントを指定します。このコンポーネントはユーザ情報と権限情報を比較して適切なActivityを選択するためのモノです。
あとはPerticipantsの情報を使ってXPDLを記述して、Baoに

public static String USERINFO = "user";

"user"はS2Containerのコンポーネント
こんな記述をするとユーザ情報をセッション等から取得してフローを呼びだします。
#メソッドの引数の後ろにも書くことは出来ますが、Containerから取得するのがお勧め