Конечно, у вас работает, потому что модель процесса другая.
Скачайте то, что вы выложили в эту ветку.
Контроллер ContractBrowse
private static final String PROCESS_CODE = "delete";
....
...
procActionsFragment.initializer()
.standard()
.init(PROCESS_CODE, contractsTable.getSingleSelected());
Открываем вашу модель процесса
Ладно, “обработал напильником” тестовый проект и смог под отладчиком вашу ошибку поймать.
Пробовали вот тут ставить точку останова и заглянуть в БД на тему того, есть ли в БД ProcInstance с данным ID?
На момент выполнения этого кода, ProcInstance таким ID еще не успел сохраниться в БД.
У вас в модели сразу идет вызов bpmdemo_ProcRolesHelper.fillProcRoles('boss', 'Administrators', bpmProcInstanceId)
.
В процессной переменной bpmProcInstanceId
ID экземпляра уже есть, он СУБД еще не успела сохранить экземпляр.
Попробуйте перенести действия с только что стартовавшим процессом из модели процесса в ProcActionsFragment
в слушатель setAfterStartProcessListener()
.