私はアプリケーションでJBPM 6.2コアエンジンを使用しています。JBPMタスクイベントリスター登録
独自のカスタムタスクイベントリスナーを使用して自分のJavaコードを実行したかったのです。
JBPMコアランタイムエンジンで使用できるようにドキュメントが見つかりませんでした。私はコンソールで使用する複数の場所を見つけ、デプロイメント記述子で定義しました。
助けてください!
私はアプリケーションでJBPM 6.2コアエンジンを使用しています。JBPMタスクイベントリスター登録
独自のカスタムタスクイベントリスナーを使用して自分のJavaコードを実行したかったのです。
JBPMコアランタイムエンジンで使用できるようにドキュメントが見つかりませんでした。私はコンソールで使用する複数の場所を見つけ、デプロイメント記述子で定義しました。
助けてください!
タスク・イベント・リスナーは、RuntimeManagerレベルまたはTaskServiceレベルで登録できます。
TaskService taskService = runtime.getTaskService(); ((EventService<TaskLifeCycleEventListener>)taskService).registerTaskEventListener(new DefaultTaskEventListener() { @Override public void afterTaskAddedEvent(TaskEvent event) { System.out.println("taskId = " + event.getTask().getId()); } });
:
RuntimeEnvironment環境= RuntimeEnvironmentBuilder.getDefault() .persistence(真) .entityManagerFactory(EMF) .userGroupCallバック(userGroupCallback) .addAsset(ResourceFactory.newClassPathResource(プロセス)、 ResourceType.BPMN2) .registerableItemsFactory(新しいDefaultRegisterableItemsFactory(){ @Override公衆リストgetTaskListeners(){ リストリスナー=のsuper.getTaskListeners()。 listeners.add(新しいDefaultTaskEventListener(){ @Override公共ボイドafterTaskAddedEvent(TaskEventイベント){ のSystem.out.println( "のtaskId =" + event.getTask()のgetId());} }) ; リスナーを返します。 } }) .get(); 戻り値RuntimeManagerFactory.Factory.get()。newPerProcessInstanceRuntimeManager(環境)。