cancel
Showing results for 
Search instead for 
Did you mean: 

Support for transactional sub processes

trainp
Champ in-the-making
Champ in-the-making
Are there plans to support BPMN transactional sub processes?  While trying to get a transactional sub process with a compensation boundary event on a nested task working, I stumbled on the following Activiti code (RC1 code):
      } elseif (activityElement.getTagName().equals("sendTask")
              || activityElement.getTagName().equals("adHocSubProcess")
              || activityElement.getTagName().equals("businessRuleTask")
              || activityElement.getTagName().equals("complexGateway")
              || activityElement.getTagName().equals("eventBasedGateway")
              || activityElement.getTagName().equals("transaction")) {
        addWarning("Ignoring unsupported activity type", activityElement);
      }


and:
      // Depending on the sub-element definition, the correct activityBehavior
      // parsing is selected
      Element timerEventDefinition = boundaryEventElement.element("timerEventDefinition");
      if (timerEventDefinition != null) {
        parseBoundaryTimerEventDefinition(timerEventDefinition, interrupting, nestedActivity);
      } else {
        addError("Unsupported boundary event type", boundaryEventElement);
      }


I can't find any indication that these features are on the roadmap or that there is an open issue to resolve.

Is there a statement of which BPMN features are not supported anywhere and whether there are plans to provide support for these features?
In particular, are there plans to implement the features required to support transactional sub processes?

Is there a workable work around to provide support for compensation?
1 REPLY 1

jbarrez
Star Contributor
Star Contributor
You are correct: these features are not yet implemented currently.
However, it is our end goal to get all of the BPMN constructs implemented, it is just a question of time 😉

The best thing to do is to create a Jira issue in our isse tracker http://jira.codehaus.org/browse/ACT and let people vote on it, that gets things prioritized.

I can't think of a real workaround just now out of my head, because it depends on your process model. Using conitions and other way of arranging tasks, it shoukld be possible to get a similar behavior.