7.1.0-M9

Release 7.1.0-M9

You can consume all the Activiti artifacts for this release from Alfresco Nexus:

<repositories>
<repository>
<id>activiti-releases</id>
<url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases</url>
</repository>
</repositories>

Activiti Cloud:

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.activiti.cloud</groupId>
<artifactId>activiti-cloud-dependencies</artifactId>
<version>7.1.0-M9</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>

Activiti Core

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-dependencies</artifactId>
<version>7.1.0-M9</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>

In the 7.1.0-M9 release you will find the following main fixes & features:

  • Mark audit producer channel as transactional (messages sent from the runtime bundle to query and audit services): If Activiti successfully commits its transaction, the producer binder will also execute commit on the transacted channel to publish messages. In the event Activiti database transaction is rolled back, the producer binder will rollback any messages waiting for commit in the output stream channel. In case of an infrastructure issue where messages cannot be sent, the producer send()method will return false and will raise an exception to signal the Activiti closing manager to rollback the database transaction.

  • Allow multi-instance Result Collection (loopDataOutputRef) to collect all the local variables:

    • when both loopDataOutputRef and outputDataItem (Result element) are set in the xml file, only the value of the variable specified in outputDataItem will be collected in loopDataOutputRef. The result will be a list of values. I.e.

    <multiInstanceLoopCharacteristics isSequential="false">
    <loopCardinality>2</loopCardinality>
    <loopDataOutputRef>meals</loopDataOutputRef>
    <outputDataItem name="meal"/>
    </multiInstanceLoopCharacteristics>

    Example of result: ["pizza", "pasta"]

    • when only loopDataOutputRef is set, all the local variables will be collected in loopDataOutputRef. The result will be a list of maps.

    <multiInstanceLoopCharacteristics isSequential="false">
    <loopCardinality>2</loopCardinality>
    <loopDataOutputRef>result</loopDataOutputRef>
    </multiInstanceLoopCharacteristics>

    Example of result: [{"meal": "pizza", "anotherLocalVariable": "value1"}, {"meal": "pasta", "anotherLocalVariable": "value2"}]

  • [Modeling Application] Add support for expressions on the called element of a Call Activity.

  • Fix AsyncJobAddedNotification.closed that was called inside the transaction.

  • Fix exception when a variable of type LocalDateTime is created