How to get Drools BPMN2 to evaluate Data Assignments as MVEL Expressions?

18 views Asked by At

Drools 8.44.0 / JDK17

I have a WorkItem handler that I'm trying to map the input for. I'd like to use an MVEL Expression as an input. jcConfig is process variable of type java.util.Map. I selected "expression" from the drop down and typed in: ${jcConfig["testUrl"]}. Visual Studio code added the " characters.

I would hope/expect when the workItem is invoked, that MVEL expression is executed, but instead, it's passed as the literal string.

What am I missing to get this to be evaluated as MVEL? My only workaround currently is to create a script Node with Java and assign it to a process variable, which is a lengthy workaround. Thank you for any help or hints, even a clue to where I should look in the java Drools source code would be useful.

enter image description here

The XML generated from BPMN2 is the following:

<bpmn2:dataInputAssociation>
  <bpmn2:targetRef>_21EE5EB2-DC8A-47D5-8C53-E3AEE26B2492_UrlInputX</bpmn2:targetRef>
  <bpmn2:assignment>
    <bpmn2:from xsi:type="bpmn2:tFormalExpression"><![CDATA[${jcConfig["testUrl"]}]]></bpmn2:from>
    <bpmn2:to xsi:type="bpmn2:tFormalExpression"><![CDATA[_21EE5EB2-DC8A-47D5-8C53-E3AEE26B2492_UrlInputX]]></bpmn2:to>
  </bpmn2:assignment>
</bpmn2:dataInputAssociation>
0

There are 0 answers