jBPMプロセスアプリケーションの例外処理
最終回の今回は、前回のJava SE環境を用いてjBPMプロセスアプリケーションの例外処理について解説します。是非トライしてみてください。
さらにユーザインターフェースを開発する際のポイントを解説し、最後にjBPMを使う上で役立つ参考情報についてまとめていきます。
(画像をクリックすると別ウィンドウに拡大図を表示します)
例外はどのように処理されるか
前回はシンプルなプロセス定義SimpleProcessを作成し、プロセス定義からイベントを介してActionHandlerを実装したJavaクラスを呼び出すことを解説しました。では、Javaクラスで発生する例外はどのように扱われるのでしょうか。
このことを確認するため、前回作成したTestHandlerクラスを少し改造して例外をスローしてみましょう。ここでは例外は簡単にjava.lang.Exceptionとします(リスト1、赤字が追加した部分)。
次にjBPMグラフィカルプロセスデザイナの「Run → Run as → Java Application」を選択し、前回作成したSimpleProcessを実行するProcessWorkerクラスを実行します。うまく実行された場合、jBPMグラフィカルプロセスデザイナ下段のConsoleウィンドウに、デバッグ情報とともにProcessWorkerのToken.signal()の呼出しに対して例外が返っているスタックトレースが表示されます(リスト2)。
つまりデフォルトでは「Javaクラスからスローされる例外は、org.jbpm.graph.def.DelegationExceptionでラップしてToken.signal()に返る」ということになります。 次のページ