It is a bug in the methode BPMN20ExportMarshaller::marshallBPMNDiagram().
if we have a process property with documentation and candidate (user or group) then the documentation will create a new element before the attributes candidate user and group, which will raise an exception.
I guess If you move the documentation calls after candidate (user and group) calls then it should work. I couldn't find a JIRA… should I create a new one?
…
if (StringUtils.isNotEmpty(process.getDocumentation())) {
xtw.writeStartElement("documentation");
xtw.writeCharacters(process.getDocumentation());
xtw.writeEndElement();
}
if (process.getCandidateStarterUsers().size() > 0) {
Iterator<String> candidateStarterUserIterator = process.getCandidateStarterUsers().iterator();
String candidateStarterUsers = candidateStarterUserIterator.next();
while (candidateStarterUserIterator.hasNext()) {
candidateStarterUsers += ", " + candidateStarterUserIterator.next();
}
xtw.writeAttribute(ACTIVITI_EXTENSIONS_PREFIX, ACTIVITI_EXTENSIONS_NAMESPACE, "candidateStarterUsers", candidateStarterUsers);
}