Size: a a a

Camunda BPM Group

2019 August 22

AE

Alter Ego in Camunda BPM Group
@Kotskin я с этим кстати уже сталкивался, рантайм сервисом в шедулере пытался вывести список всех инстансов, а он NPE кидает.
источник

AE

Alter Ego in Camunda BPM Group
И самое странное, что даже с запущенным процессом оно всё равно выкидывает NPE в шедулере...
источник

DK

Denis Kotov in Camunda BPM Group
а рантайм сервис как получен?
источник

AE

Alter Ego in Camunda BPM Group
Denis Kotov
а рантайм сервис как получен?
Автовайред.
источник

AE

Alter Ego in Camunda BPM Group
Ну RuntimeServiceImpl.
источник

AE

Alter Ego in Camunda BPM Group
На самом деле я кое-что узнал.
источник

AE

Alter Ego in Camunda BPM Group
Я сделал ивэнт листенер и проверил, работает ли оно вообще. Этот код находится вне шедулера:

 @EventListener
 private void processPostDeploy(PostDeployEvent event) {
   runtimeService.startProcessInstanceByKey("loanApproval");
   String processInstanceId = runtimeService
           .createProcessInstanceQuery()
           .processDefinitionKey("loanApproval")
           .singleResult()
           .getId();
}


И он работает.
источник

AE

Alter Ego in Camunda BPM Group
А в шедулере оно не работает. Может ли это быть из-за того, что оный тригерится раз в две секунды?
источник

AE

Alexey Efimov in Camunda BPM Group
Он может триггериться еще до того, как все нужное для камунды создано?
источник

AE

Alexey Efimov in Camunda BPM Group
РантаймСервиса может не быть еще
источник

AE

Alter Ego in Camunda BPM Group
Alexey Efimov
Он может триггериться еще до того, как все нужное для камунды создано?
Наверное да.
источник

AE

Alter Ego in Camunda BPM Group
Но мне кажется, что причина может быть в чём-то другом.
источник

AE

Alter Ego in Camunda BPM Group
Рантайм сервис дебагером не null.
источник

AE

Alter Ego in Camunda BPM Group
Я проверял.
источник

AE

Alter Ego in Camunda BPM Group
Т.е сам рантайм сервис есть в шедулере, он проинициализирован. Но его методы вызывают NPE.
источник

AE

Alter Ego in Camunda BPM Group
@ephimme

no processes deployed with key 'loanApproval': processDefinition is null
источник

AE

Alexey Efimov in Camunda BPM Group
А вот тут просто деплой еще не прошел
источник

AE

Alexey Efimov in Camunda BPM Group
сделайте листенер, который будет флажок выставлять в postDeploy, и только по нему в шедулере работу производите
источник

AE

Alexey Efimov in Camunda BPM Group
Я думаю поможет
источник

AE

Alter Ego in Camunda BPM Group
Хм, и как тогда настроить шедулер на пост деплой движка?
источник