Назначение ресурсов в движках Activit и esper

Я пытаюсь изменить код, который обнаруживает события из механизма activiti и бросает их в поток ESPER, и пытаюсь отобразить и изменить их переменные и выдать новые события в том же потоке. для этого я создал именованное окно, чтобы выбросить в него все события, обнаруженные в Activiti

epAdmin.createEPL("create window intermwindow.win:keepall() as select taskInstanceId,receiveTime,requestedAmount,eventType from tasklistenerlogic", "cepStatementmainquerywindow"); //create a new named window 

epAdmin.createEPL("insert into intermwindow(taskInstanceId, receiveTime, requestedAmount, eventType ) select taskInstanceId,receiveTime,requestedAmount,'created' from tasklistenerlogic where eventType = 'create' ", "cepStatementmainquerywindowii1");

epAdmin.createEPL("insert into intermwindow(taskInstanceId, receiveTime, requestedAmount, eventType ) select taskInstanceId,receiveTime,requestedAmount,'allocated' from tasklistenerlogic where eventType = 'assignment' ", "cepStatementmainquerywindowii2");

epAdmin.createEPL("insert into intermwindow(taskInstanceId, receiveTime, requestedAmount, eventType) select taskInstanceId,receiveTime,requestedAmount,'completed' from tasklistenerlogic where eventType = 'complete' ", "cepStatementmainquerywindowii3");

epAdmin.createEPL("select * from intermwindow", "cepStatementmainquerywindowo");

все, что мне нужно сделать, это назначить несколько ресурсов для одной и той же задачи, как указано ниже

taskService.setAssignee(taskService.createTaskQuery().singleResult().getId(),"Atef");

taskService.setAssignee(taskService.createTaskQuery().singleResult().getId(),"Ramadan");

это вывод, который я получил:

>>> Throwing event: task  assignment  successfully: LoanRequestReceivedEvent{taskInstanceId= 9,receiveTime= 1446853025179,requestedAmount= 10,eventtype= assignment,resource= Atef}
event mapped successfully:  {receiveTime=1446853025179, requestedAmount=10, taskInstanceId=9, eventType=allocated}
>>> Throwing event: task  assignment  successfully: LoanRequestReceivedEvent{taskInstanceId= 9,receiveTime= 1446853025226,requestedAmount= 10,eventtype= assignment,resource= Ramadan}
event mapped successfully:  {receiveTime=1446853025226, requestedAmount=10, taskInstanceId=9, eventType=allocated}

проблема в том, что всякий раз, когда я пытался написать запрос, чтобы получить все разные ресурсы для одного и того же идентификатора задачи, как это

epAdmin.createEPL("select * from pattern [ every tasklistenerlogic(resource = \"Atef\") -> tasklistenerlogic(resource = \"Ramadan\") ]", "q3");

эта ошибка появляется: Тесты по ошибке:

testEsperActivitiSetup(org.bpmnwithactiviti.chapter14.LoanRequestProcessWithEsperTest): Property named 'resource' is not valid in any stream [select * from pattern [ every tasklistenerlogic(resource = "Atef") -> tasklistenerlogic(resource = "Ramadan") ]]

Я не знаю, как решить эту проблему, любые идеи будут оценены

0 ответов

Другие вопросы по тегам