пятница, 2 апреля 2010 г.

JBPM - Часть 5 - Интеграция со Spring.

Если использовать стандартный механизм взаимодействия с JBPM, то дотсуп к основным объектам фреймворка получается не очень удобным способом. В моем приложении активно используется Spring, поэтому я решил получать доступ к JBPM через него. Посмотрим как же этого добиться.

Мне необходимо работать со следующими операциями:
- Деплоить процесс или несколько процессов
- Запускать процессы
- Возобновлять процессы, находящиеся в ожидании.

Для этих целей я ввел два интерфейса: DeployService, ProcessService. Их код представлен ниже.





В реализации DeployService используется реализация JBPM интерфейса RepositoryService. А в ProcessService добавляется использование ExecutionService. Ниже приводится реализация этих интерфейсов.






Можно заметить, что в реализациях я использую стандартную аннотацию Autowired, что означает наличие соответствующих бинов в контексте приложения. Чтобы они там появились необходимо добавить в контекст следующие строчки



Первая строчка инициализирует конфигурацию jbpm параметрами, взятыми из файла конфигурации. Вторая стока создает основной бин, из которого уже получаются два последующих бина.
Ну и последнее, что необходимо сделать, это создать бины для моих сервисов:



Вот и все. Теперь я могу спокойно деплоить процессы с помощью


и запускать например так



Вот такая достаточно простая интеграция получилась.

Комментариев нет:

Отправить комментарий