DecisionDef Not found with Spring


#1

Spring context

    <beans:bean id="processEngineConfiguration"
		class="org.camunda.bpm.engine.spring.SpringProcessEngineConfiguration">
		<beans:property name="processEngineName" value="engine" />
		<beans:property name="deploymentResources"
			value="classpath*:diagram_2.bpmn,decisionTable.dmn" />
			
		    <beans:property name="processEnginePlugins">
		    	<beans:list>
					<beans:bean class="com.camunda.consulting.DmnDecisionChainingPlugin" />
		    	</beans:list>
    		</beans:property>
			
	</beans:bean>

META-INF/processes.xml

<process-archive name="bpm">
		<process-engine>default</process-engine>
		<properties>
			<property name="isDeleteUponUndeploy">true</property>
			<property name="isScanForProcessDefinitions">true</property>
		</properties>
	</process-archive>

Error while calling API and running BPMN which has dmn inside it

2019-06-13 16:25:25.335 [1204167249@qtp-182738614-0] [ERROR] context - ENGINE-16006 BPMN Stack Trace:
decideOnEntityProcess (activity-execute, ScopeExecution[511406])
decideOnEntityProcess, name=decision
^
|
StartEvent_1

2019-06-13 16:25:25.336 [1204167249@qtp-182738614-0] [DEBUG] cmd - ENGINE-13011 closing existing command context
2019-06-13 16:25:25.336 [1204167249@qtp-182738614-0] [ERROR] context - ENGINE-16004 Exception while closing command context: no decision definition deployed with key ‘decideOnEntity’ and tenant-id ‘null’: decisionDefinition is null
org.camunda.bpm.engine.exception.dmn.DecisionDefinitionNotFoundException: no decision definition deployed with key ‘decideOnEntity’ and tenant-id ‘null’: decisionDefinition is null

Please help!


#2

Hi @Harsh_Goswami,

please ensure that the DMN is deployed.

Maybe, the classpath prefix is missing. Try to change

to

<beans:property name=“deploymentResources” value=“classpath*:diagram_2.bpmn,classpath*:decisionTable.dmn” />

Best regards,
Philipp


#3

Hi @Philipp_Ossler,

I don’t think my DMN is getting deployed. Is there any special bean for DMN engine like following

<beans:bean id=“processEngineConfiguration”
class=“org.camunda.bpm.engine.spring.SpringProcessEngineConfiguration”>

I tried with following

<beans:property name=“deploymentResources” value=“classpath*:diagram_2.bpmn,classpath*:decisionTable.dmn” />

and also tried with following

<beans:property name="deploymentResources">
			<beans:list>
				<beans:value>classpath*:diagram_2.bpmn</beans:value>
				<beans:value>classpath*:decisionTable.dmn</beans:value>			
			</beans:list>
		</beans:property>

But its not working. Any pointer or suggestion for this ?

And I dont think without following bean my META-INF\processes.xml would be executing

<beans:bean id="invoicePa" class="org.camunda.bpm.engine.spring.application.SpringServletProcessApplication" />

#4

Can you share your example to reproduce the issue?


#5

on which platform should I share files ? Google drive ?


#6

It would be best if you could share a failing test case via Github. For example, using the template https://github.com/camunda/camunda-engine-unittest.


#7

can you please clone this and test ?

This is a Spring Rest API project. and you need DB config for this. Please configure dataSource in the context file.


#8

To Test with Postman

URL : http://localhost:8080/bpmDmnTest/dmn/test

Request :
{
“itype” : “E”
}


#9

I need a bit more time to set up your example…

In the meantime, can you please share the full server log (level DEBUG) from starting your application until the failure occurs.