Camunda Run version 8.9.9
I’m trying to deploy this DMN model - which I’m quite positive it used to work on Camunda 8.6 - but I’m getting a parsing error that does not say much:
Response code 400 (Bad Request) - {“type”:“about:blank”,“title”:“INVALID_ARGUMENT”,“status”:400,“detail”:“Command ‘CREATE’ rejected with code ‘INVALID_ARGUMENT’: Expected to deploy new resources, but encountered the following errors:\n’DiscountCalculation_8_9.dmn’: Failed to parse DMN: org.camunda.bpm.model.dmn.DmnModelException: Unable to parse model”,“instance”:“/v2/deployments”}. Enhanced stack trace available as error.source. [ deploy-error ]
DiscountCalculation_8_9.dmn (9.0 KB)
If I remove the top Decision (“Discount Calculation”) and Input Data “Purchase Amount” , the deployment works fine:
DiscountCalculation_8_9_Test.dmn (4.6 KB)
I think I found the reason but I don’t know if it is an expected behavior.
When a DMN model is created and the data type of the input data is not specified, the elements look like this:
<inputData id="InputData_0ny0kuw" name="Account Streaming Tenure" />
<inputData id="InputData_0cmuehn" name="Account Cable Tenure" />
<inputData id="InputData_1h2agge" name="Purchase Amount"/>
If I set specific data types for any of the Input Data elements
<inputData id="InputData_0ny0kuw" name="Account Streaming Tenure" />
<inputData id="InputData_0cmuehn" name="Account Cable Tenure">
<variable id="InformationItem_1xkqoqq" typeRef="number" />
</inputData>
<inputData id="InputData_1h2agge" name="Purchase Amount" />
The deployment fails.
Even if I change it back to Any it fails. I have to manually remove the “variable” elements in order to have a successful deployment.
The file attached that works also has Input Data elements with data type specified but I noticed that the “variable” elements have a “name” attribute:
<inputData id="InputData_00br8b0" name="Account Streaming Tenure">
<variable id="InformationItem_1ywulwm" name="Account Streaming Tenure" typeRef="number" />
</inputData>
<inputData id="InputData_0enr4u0" name="Account Cable Tenure">
<variable id="InformationItem_1p7ozt3" name="Account Cable Tenure" typeRef="number" />
</inputData>
If I manually add the attribute “name” to each Input Data elements:
<inputData id="InputData_0ny0kuw" name="Account Streaming Tenure">
<variable id="InformationItem_0qndhu9" name="Account Streaming Tenure" typeRef="number" />
</inputData>
<inputData id="InputData_0cmuehn" name="Account Cable Tenure">
<variable id="InformationItem_0psutgy" name="Account Cable Tenure" typeRef="number" />
</inputData>
<inputData id="InputData_1h2agge" name="Purchase Amount">
<variable id="InformationItem_0ff9d0p" name="Purchase Amount" typeRef="number" />
</inputData>
The deployment succeeds and the decision works as expected.
I downloaded Camunda Modeler 5.50.1 and it creates the attribute “name” as expected. I’m closing this topic.