flowable / flowable/flowable-engine

Flowable-Process-Validation: No validation error for parallel gateway flow with default attribute

Offen
#2,233 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
9.5k
Forks
2.9k
Ø Merge
7 Std. 8 Min.
Gemergte PRs (30 T.)
2

Beschreibung

We are using flowable 6.5.0.

When a parallel gateway flow of is marked as default flowable-process-validation successfully validates the bpmn process (see attached simplified example).

[ParallelGatewayDefaultAttribute.bpmn20.xml.txt](https://github.com/flowable/flowable-engine/files/4358445/ParallelGatewayDefaultAttribute.bpmn20.xml.txt)

The deployment then fails with:

```
o.f.e.i.b.d.ParsedDeploymentBuilder : Could not parse resource ParallelGatewayDefaultAttribute.bpmn
org.flowable.bpmn.exceptions.XMLException: cvc-complex-type.3.2.2: Attribute 'default' is not allowed to appear in element 'parallelGateway'.
at org.flowable.bpmn.converter.BpmnXMLConverter.convertToBpmnModel(BpmnXMLConverter.java:276)
at org.flowable.engine.impl.bpmn.parser.BpmnParse.execute(BpmnParse.java:148)
at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.createBpmnParseFromResource(ParsedDeploymentBuilder.java:97)
at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.build(ParsedDeploymentBuilder.java:55)
at org.flowable.engine.impl.bpmn.deployer.BpmnDeployer.deploy(BpmnDeployer.java:78)
at org.flowable.engine.impl.persistence.deploy.DeploymentManager.deploy(DeploymentManager.java:62)
...
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'default' is not allowed to appear in element 'parallelGateway'.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.processAttributes(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(Unknown Source)
at org.apache.xerces.jaxp.validation.StAXValidatorHelper$StreamHelper.validate(Unknown Source)
at org.apache.xerces.jaxp.validation.StAXValidatorHelper.validate(Unknown Source)
at org.apache.xerces.jaxp.validation.ValidatorImpl.validate(Unknown Source)
at java.xml/javax.xml.validation.Validator.validate(Validator.java:124)
at org.flowable.bpmn.converter.BpmnXMLConverter.validateModel(BpmnXMLConverter.java:225)
at org.flowable.bpmn.converter.BpmnXMLConverter.convertToBpmnModel(BpmnXMLConverter.java:269)
... 144 common frames omitted
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit der angehängten Datei ParallelGatewayDefaultAttribute.bpmn20.xml.txt und dem Validierungspfad über BpmnXMLConverter.validateModel und convertToBpmnModel und vergleiche ihn anschließend mit dem Deployment-Parsing in BpmnParse. Als abgeschlossen gilt die Aufgabe, wenn der Prozessvalidator das ungültige Default-Attribut konsistent mit dem Deployment ablehnt und das Verhalten durch eine Regressionprüfung verifiziert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
backend
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.