Grails Activiti プラグインを使用して独自のワークフロー システムを構築したいと考えています。これを行う手順は何ですか?誰でも私を助けることができますか?
プロジェクトに Grails Activiti プラグインをインストールしました。また、プロジェクトに休暇申請のサンプル アプリケーションをダウンロードしてインストールし、その動作を確認しました。
現時点では、Grails Activiti プラグインを実装するための段階的な手順はないと思います。私は似たような船 (ワークフロー エンジンを実装したい Grails を使用する開発ショップ) にいますが、これまでのところ Activiti プラグインはあまり役に立ちませんでした。それを使用している人は、GORM と Activiti の間で提供される統合を実際に活用していないようです。
大まかに言うと、Grails で Activiti を使用するために私が推奨する手順は次のとおりです。おそらく、Activiti Plugin を使用するか、使用しないでください。
一般的に、私の経験則では、Activiti にプロセスを処理させ、Grails に他のすべて (UI、データの永続化と操作、検証など) を処理させます。
Grails を使用して、コントローラーと GSP を介してすべてのユーザー インターフェイスを管理し、ドメイン オブジェクトとサービスを介してオブジェクト モデルの多くを管理できるようにするために、このアプローチをお勧めします。Activiti チームが構築している UI に問題はありませんが、独自の特徴と哲学を持つ独自の Java/UI フレームワークであるVaadinに基づいています。スーパー開発者ならそれらをシームレスに組み合わせることができると確信しており、おそらくすでにそうしていますが、彼/彼が山から降りてきて教えてくれない限り、試すツールの数を制限する必要があります.一気にマスターする。:)
BuildConfig.groovy ファイルで、依存関係とリポジトリのクロージャーに次の内容を含めます。
repositories {
inherits true // Whether to inherit repository definitions from plugins
mavenRepo "https://maven.alfresco.com/nexus/content/groups/public/"
//any other repositories you need go here, including grailsCentral(), etc.
}
dependencies {
compile("org.activiti:activiti-engine:5.13"){
excludes "spring-beans"
}
}
spring-context の依存関係を除外する必要はありませんが、Grails 2.3.1 は Activiti 5.13 より新しいバージョンの Spring を使用しています。私が試した 2/3 のマシンでは問題ありませんでした。Grails は、Activiti が必要とする古いバージョンを無視して、新しいバージョンの Spring を使用するだけです。ただし、あるマシンでは、この違いにより、追跡が困難な persnickety 例外が発生しました。