Timer Start Event IllegalArgumentException

Hello,

we can’t start an application because it has a process with a timer start event that throws an IllegalArgumentException. We configured the timer start event the same way as a timer start event in another application that starts without any problems. Both timer start events don’t have priorities themselves, but their processes have configured priorities.

The exception isn’t thrown if we change the timer start event to a normal start event.

When debugging the errorMessageHeading is “Job StartEvent__TIMER/timer-start-event instantiated in context of null”.

We’re using Camunda EE 7.9.

java.lang.RuntimeException: org.camunda.bpm.engine.ProcessEngineException: ENGINE-08043 Exception while performing ‘Deployment of Process Application Application’ => 'Deployment of process archive ‘null’: UTILS-02001 Parameter ‘variableScope’ is null
at org.camunda.bpm.engine.spring.application.SpringProcessApplication.onApplicationEvent(SpringProcessApplication.java:101) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.spring.application.SpringProcessApplication.onApplicationEvent(SpringProcessApplication.java:48) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:400) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:354) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:888) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:161) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:553) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) ~[spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) [spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395) [spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) [spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255) [spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243) [spring-boot-2.0.2.RELEASE.jar:2.0.2.RELEASE]
at Application.main(Application.java:41) [classes/:na]
Caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-08043 Exception while performing ‘Deployment of Process Application Application’ => 'Deployment of process archive ‘null’: UTILS-02001 Parameter ‘variableScope’ is null
at org.camunda.bpm.container.impl.ContainerIntegrationLogger.exceptionWhilePerformingOperationStep(ContainerIntegrationLogger.java:312) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:132) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.executeDeploymentOperation(MBeanServiceContainer.java:156) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.spi.DeploymentOperation$DeploymentOperationBuilder.execute(DeploymentOperation.java:212) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.RuntimeContainerDelegateImpl.deployProcessApplication(RuntimeContainerDelegateImpl.java:95) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.application.AbstractProcessApplication.deploy(AbstractProcessApplication.java:59) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.spring.application.SpringProcessApplication.start(SpringProcessApplication.java:106) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.spring.application.SpringProcessApplication.afterPropertiesSet(SpringProcessApplication.java:115) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.spring.boot.starter.SpringBootProcessApplication.afterPropertiesSet(SpringBootProcessApplication.java:75) ~[camunda-bpm-spring-boot-starter-3.0.0.jar:3.0.0]
at org.camunda.bpm.engine.spring.application.SpringProcessApplication.onApplicationEvent(SpringProcessApplication.java:92) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
… 16 common frames omitted
Caused by: java.lang.IllegalArgumentException: UTILS-02001 Parameter ‘variableScope’ is null
at org.camunda.commons.utils.EnsureUtilLogger.parameterIsNullException(EnsureUtilLogger.java:21) ~[camunda-commons-utils-1.5.0.jar:1.5.0]
at org.camunda.commons.utils.EnsureUtil.ensureNotNull(EnsureUtil.java:31) ~[camunda-commons-utils-1.5.0.jar:1.5.0]
at org.camunda.bpm.engine.impl.el.ElValueProvider.getValue(ElValueProvider.java:35) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.DefaultPriorityProvider.evaluateValueProvider(DefaultPriorityProvider.java:75) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.DefaultPriorityProvider.getProcessDefinedPriority(DefaultPriorityProvider.java:157) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.jobexecutor.DefaultJobPriorityProvider.getProcessDefinitionPriority(DefaultJobPriorityProvider.java:52) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.jobexecutor.DefaultJobPriorityProvider.getProcessDefinitionPriority(DefaultJobPriorityProvider.java:29) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.DefaultPriorityProvider.determinePriority(DefaultPriorityProvider.java:112) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.jobexecutor.JobDeclaration.createJobInstance(JobDeclaration.java:105) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.createTimer(TimerDeclarationImpl.java:162) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.jobexecutor.TimerDeclarationImpl.createStartTimerInstance(TimerDeclarationImpl.java:158) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.bpmn.deployer.BpmnDeployer.addTimerDeclarations(BpmnDeployer.java:235) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.bpmn.deployer.BpmnDeployer.adjustStartEventSubscriptions(BpmnDeployer.java:223) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.bpmn.deployer.BpmnDeployer.definitionAddedToDeploymentCache(BpmnDeployer.java:140) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.bpmn.deployer.BpmnDeployer.definitionAddedToDeploymentCache(BpmnDeployer.java:67) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.AbstractDefinitionDeployer.registerDefinition(AbstractDefinitionDeployer.java:290) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.AbstractDefinitionDeployer.persistDefinitions(AbstractDefinitionDeployer.java:217) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.AbstractDefinitionDeployer.postProcessDefinitions(AbstractDefinitionDeployer.java:199) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.AbstractDefinitionDeployer.deploy(AbstractDefinitionDeployer.java:63) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.persistence.deploy.cache.CacheDeployer$1.call(CacheDeployer.java:50) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.persistence.deploy.cache.CacheDeployer$1.call(CacheDeployer.java:47) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.CommandContext.runWithoutAuthorization(CommandContext.java:473) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.persistence.deploy.cache.CacheDeployer.deploy(CacheDeployer.java:47) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.persistence.deploy.cache.DeploymentCache.deploy(DeploymentCache.java:63) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.persistence.entity.DeploymentManager.insertDeployment(DeploymentManager.java:55) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd.deploy(DeployCmd.java:479) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:138) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:126) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.CommandContext.runWithoutAuthorization(CommandContext.java:473) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd.doExecute(DeployCmd.java:126) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:92) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:72) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:104) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.spring.SpringTransactionInterceptor$1.doInTransaction(SpringTransactionInterceptor.java:42) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) ~[spring-tx-5.0.6.RELEASE.jar:5.0.6.RELEASE]
at org.camunda.bpm.engine.spring.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:40) ~[camunda-engine-spring-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:66) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.RepositoryServiceImpl.deployWithResult(RepositoryServiceImpl.java:99) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.repository.DeploymentBuilderImpl.deployWithResult(DeploymentBuilderImpl.java:266) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.repository.DeploymentBuilderImpl.deploy(DeploymentBuilderImpl.java:262) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.engine.impl.repository.ProcessApplicationDeploymentBuilderImpl.deploy(ProcessApplicationDeploymentBuilderImpl.java:59) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.deployment.DeployProcessArchiveStep.performOperationStep(DeployProcessArchiveStep.java:141) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
at org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:116) ~[camunda-engine-7.9.0-ee.jar:7.9.0-ee]
… 24 common frames omitted

Can you please upload your model, or maybe give some details of exactly how you’ve configured it.

While reducing the process to just the start event it seems like the problem is not just the timer start event, but the timer start event in combination with the process priorities that we set using spring beans:

image