Activiti日本語情報ブログ

OSSのBPMエンジン Activitiの日本語情報をまとめています。

JJUG CCC 2018 SpringでActiviti 7のセッションやります!

今週末(5月28日 土曜日)に開催されるJJUG CCC 2018 Springで、Activiti 7のセッションやります。ActivitiプロジェクトのリーダーMauricioと一緒に、モノリシックな構成の旧Activiti(Activiti 5.x, 6.x)からマイクロサービスアーキテクチャーのActiviti 7.xへ…

Alfresco Devcon 2018 参加レポート

概要 ActivitiプロジェクトのスポンサーであるAlfresco社の開発者向けイベント Alfresco Devcon 2018@Lisboa(1月16-18日)に参加して、Activitiの事例として自社製品のIM-BPMを紹介してきました。 また、Activitiの開発チームで集まって、Activiti 7の新機能…

【告知】アドベントカレンダーはじめました(Activiti Advent Calendar 2017)

Activiti についてのアドベントカレンダーをはじめました。 qiita.com 現在開発を進めているActiviti 7の情報を日本語で発信するというところを主にやっていきたいと思っていますが、Activiti自体がニッチなこともあり、前半は入門的な内容と既存のバージョ…

GitHubのスター数で見るBPMエンジン

はてなブログでフォローしてる方の記事を真似して、BPMエンジン版で書いてみました。 takezoe.hatenablog.com まず、トップ5の選出ですが、シンプルにbpmで検索してスター数でソートしました。ただし、5つ目については、私の独断と偏見でbonitasoftを持って…

【Activiti Tips】プロセス図を出力する

概要 今回の記事では、Activiti Designerで作成したbpmnファイルを元にサーバサイドでプロセス図の画像ファイルを出力する方法をご紹介します。 プロセス図(プロセス定義) RepositoryService.getProcessDiagram(String processDefinitionId)を利用すること…

【Activiti EL式】プロセスインスタンスの開始年を取得する

EL式と言っても、もはやコーディングしているような感じですが。。。 プロセスインスタンスの開始年を取得する 以下のように暗黙オブジェクト executionからプロセスエンジンを取得してクエリでプロセスインスタンスを持ってくれば、プロセスの開始日時を解…

【Activiti Tips】実行中のプロセスインスタンスが参照するプロセス定義を差し替える

概要 今回の記事では、誤って不具合を含んだプロセス定義をリリースして運用を始めてしまった場合に、稼働中のプロセスインスタンスの参照するプロセス定義を変更する2つの方法を紹介します。 1つ目の方法は、不具合を修正したプロセス定義を作成し、再度デ…

【Activiti開発入門】ビジネスロジックにおけるエラーハンドリング(1) - エラーのスローとキャッチ

概要 今回の入門記事では、Service Taskのビジネスロジックで発生したエラー(例外)のハンドリング方法についてご紹介します。 エラーハンドリングは、大きく2パターンに分かれています。1つ目は、発生したエラーをビジネスエラー(業務上のエラー)として扱…

【Activiti開発入門】ビジネスロジックの作成

概要 今回の入門記事では、Javaを利用して任意のビジネスロジックを記述できるJava Service Taskをご紹介します。Java Service Taskの詳細な仕様に関しては、「Activiti User Guide 8.5.3. Java Service Task」をご参照ください。 http://www.activiti.org/u…

【Activiti EL式】EL式内での変数の存在確認方法

${execution.getVariable('X') != null ? 存在する場合の式 : 存在しない場合の式 }

【Activiti EL式】リスナーのEL式でプロセスの変数にシステムパラメータを書き込む

(例)プロセスインスタンスIDを変数に格納する。 1. 開始イベントのリスナーに以下を追加する。 イベント「start」 タイプ「式」 式 ${execution.setVariable("process_instance_id", execution.getProcessInstanceId())} 2. プロセスの開始時に変数にプロセ…

【Activitiはまりポイント】デフォルトフローの仕様

Inclusive GatewayやExclusive Gatewayの設定でデフォルトフローが設定できるが、こちらで選択したフローは他のフローが選出されない場合有効である。 デフォルトフローの条件は無視される。 http://www.activiti.org/userguide/#bpmnDefaultSequenceFlow

【Activiti入門】並行ルートの作成

概要 前回の入門記事では条件分岐のルートを紹介しましたが、今回は並行ルートを扱います。 並行ルートとは、同時に異なるユーザタスクが割り当てられるルートのことです。 ステップ 並行ルートを実現するには、「ParallelGateway」のアイコンを利用します。…

【Activiti入門】変数

概要 Activitiのプロセスでは、変数を利用してプロセスに関する入力データを扱う。 変数はデータベース(テーブル ACT_RU_VARIABLE)にて管理される。 ただし、変数の値にJava beanなどが格納された場合は、バイナリデータとしてACT_GE_BYTEARRAYテーブルに格…

Activiti 公開情報

Activitiに関して公開されている情報源をまとめました。 Document Activiti User Guide 無料で公開されている公式ドキュメント。 Activiti EngineからActiviti Explorer・Activiti RESTまで薄く広く解説している。 http://www.activiti.org/userguide/ Activ…

【Activiti入門】条件分岐ルートの作成

概要 前回の入門記事では直線のルートを紹介しましたが、今回はもう少し業務プロセスらしい、条件分岐のルートを扱います。 条件分岐ルートとは、入力値に応じて、異なるユーザタスクが割り当てられるルートのことです。 ステップ 条件判定の対象となる入力…

Activiti入門

概要 Activitiでは、BPM 2.0に準拠したBPMエンジン Activiti Engineを中核として、様々な周辺製品が提供されています。 今回のブログ記事では、Activiti Designerで作成したフローをActiviti Explorerにデプロイし、処理を行います。 Activiti Designerは、B…