Bug 1068075 - Process definition gets corrupted without any actual changes
Summary: Process definition gets corrupted without any actual changes
Keywords:
Status: CLOSED EOL
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: Eclipse Tooling
Version: 6.0.0
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: ---
: ---
Assignee: Kris Verlaenen
QA Contact: Jozef Marko
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-02-21 12:35 UTC by Anton Giertli
Modified: 2020-03-27 19:33 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-03-27 19:33:54 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
reproducer (12.98 KB, application/zip)
2014-02-21 12:35 UTC, Anton Giertli
no flags Details

Description Anton Giertli 2014-02-21 12:35:57 UTC
Created attachment 865978 [details]
reproducer

Description of problem:

I have double clicked on the node, so the Properties window popped up. I have closed this window without doing *any* changes. The first weird thing is that JBDS think I have made some changes - the * char is visible in the process definition tab in the jbds.

When process is executed after making the changes it fails with:

java.lang.IllegalArgumentException: Could not find node to attach to: bpmn20:_14EFEB73-339B-4668-8D44-95D956BF4180
	at org.jbpm.bpmn2.xml.ProcessHandler.findNodeByIdOrUniqueIdInMetadata(ProcessHandler.java:282)
	at org.jbpm.bpmn2.xml.ProcessHandler.linkBoundaryEvents(ProcessHandler.java:347)
	at org.jbpm.bpmn2.xml.ProcessHandler.end(ProcessHandler.java:179)
	at org.drools.core.xml.ExtensibleXmlParser.endElement(ExtensibleXmlParser.java:422)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
	at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(XMLSchemaValidator.java:863)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1789)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2965)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
	at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333)
	at org.drools.core.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:301)
	at org.drools.core.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:180)
	at org.jbpm.compiler.xml.XmlProcessReader.read(XmlProcessReader.java:46)
	at org.jbpm.compiler.ProcessBuilderImpl.addProcessFromXml(ProcessBuilderImpl.java:275)
	at org.drools.compiler.compiler.PackageBuilder.addProcessFromXml(PackageBuilder.java:699)
	at org.drools.compiler.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:740)
	at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:51)
	at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:40)
	at org.jbpm.runtime.manager.impl.SimpleRuntimeEnvironment.addAsset(SimpleRuntimeEnvironment.java:104)
	at org.jbpm.runtime.manager.impl.RuntimeEnvironmentBuilder.addAsset(RuntimeEnvironmentBuilder.java:273)
	at org.jbpm.runtime.manager.impl.RuntimeEnvironmentBuilder.addAsset(RuntimeEnvironmentBuilder.java:56)
	at com.sample.ProcessTest.main(ProcessTest.java:36)
java.lang.IllegalArgumentException: Cannot add asset: unable to parse xml : Exception class java.lang.IllegalArgumentException : Could not find node to attach to: bpmn20:_14EFEB73-339B-4668-8D44-95D956BF4180,
	at org.jbpm.runtime.manager.impl.SimpleRuntimeEnvironment.addAsset(SimpleRuntimeEnvironment.java:111)
	at org.jbpm.runtime.manager.impl.RuntimeEnvironmentBuilder.addAsset(RuntimeEnvironmentBuilder.java:273)
	at org.jbpm.runtime.manager.impl.RuntimeEnvironmentBuilder.addAsset(RuntimeEnvironmentBuilder.java:56)
	at com.sample.ProcessTest.main(ProcessTest.java:36)

The process execution before saving the process goes without *any* issues.

Version-Release number of selected component (if applicable):

BPMN 2 Modeler - Diagram Editor
1.0.1.201312111931
SwitchYard tools
Version: 1.1.4.v20140122-1953-H431-Final
JBDS
Version: 7.1.0.GA-v20131208-0703-B592

How reproducible:
intermittently 

Steps to Reproduce:
1. Download the attachment
2. Execute ProcessTest.java - the output is not important, important is that it did not fail
3. Open Exception.bpmn2
4. Double click on ThrowException SubProcess so the properties window will be displayed
5. Close this window without doing any changes
6. Save the process
7. Execute ProcessTest.java again and observe the exception

Actual results:

Process execution fails after saving process definition

Expected results:

Process execution goes without issues after saving process definition
Additional info:

Some changes does not break the process, for example I was able to add script task without breaking it, however, this particular node seems to be causing the problems.

Comment 3 Marek Baluch 2014-10-06 10:29:26 UTC
Verified on JBDSIS 8.0.0.Alpha2


Note You need to log in before you can comment on or make changes to this bug.