I have a process variable called “taskResolveDate” is a String datatype and has a value “2019-01-20T09:00:00Z”.
My Springbean definition is like:
@Component("workflowUtil")
public class WorkflowUtil {
public LocalDateTime getISOLocalDateTime(String dateValue) {
return LocalDateTime.parse(dateValue);
}
}
And I configured in bpmn timer boundary event like:
The same in xml format:
<bpmn:timerEventDefinition>
<bpmn:timeDate xsi:type="bpmn:tFormalExpression">${workflowUtil.getISOLocalDateTime(taskResolveDate)}</bpmn:timeDate>
</bpmn:timerEventDefinition>
I was getting below error:
[org.camunda.bpm.engine.context] [logError] @ 156 : ENGINE-16004 Exception while closing command context: Unknown property used in expression: ${workflowUtil.getISOLocalDateTime(taskResolveDate)}. Cause: Cannot resolve identifier 'taskResolveDate'
org.camunda.bpm.engine.ProcessEngineException: Unknown property used in expression: ${workflowUtil.getISOLocalDateTime(taskResolveDate)}. Cause: Cannot resolve identifier 'taskResolveDate'
at org.camunda.bpm.engine.impl.el.JuelExpression.getValue(JuelExpression.java:60)
at org.camunda.bpm.engine.impl.el.JuelExpression.getValue(JuelExpression.java:48)
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.initializeConfiguration(TimerDeclarationImpl.java:114)
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.postInitialize(TimerDeclarationImpl.java:142)
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.postInitialize(TimerDeclarationImpl.java:36)
at org.camunda.bpm.engine.impl.jobexecutor.JobDeclaration.createJobInstance(JobDeclaration.java:120)
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.createTimer(TimerDeclarationImpl.java:169)