Associating a Data Object to a sequence flow in jBPM5 Web Process Designer causes "org.eclipse.bpmn2.impl.AssociationImpl cannot be cast to org.eclipse.bpmn2.FlowNode"

Solution Unverified - Updated -

Issue

  • According to BPMN 2.0 a data object can be associated to a sequence flow. However, it causes following issues while implementing it from jBPM Process Designer through BRM. Here is a summary of the issues.
    • Create a Data Object associated with a Sequence Flow by clicking a Sequence Flow and then clicking a Data Object in the shape menu. But while saving the process, it throws
INFO  [STDOUT] Exception parsing process: org.eclipse.bpmn2.impl.AssociationImpl cannot be cast to org.eclipse.bpmn2.FlowNode

While validating the process, it throws

ERROR [[SyntaxCheckerServlet]] Servlet.service() for servlet SyntaxCheckerServlet threw exception
java.lang.ClassCastException: org.eclipse.bpmn2.impl.AssociationImpl cannot be cast to org.eclipse.bpmn2.FlowNode
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.reconnectFlows(Bpmn2JsonUnmarshaller.java:1313)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshall(Bpmn2JsonUnmarshaller.java:237)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonUnmarshaller.unmarshall(Bpmn2JsonUnmarshaller.java:202)
    at org.jbpm.designer.web.profile.impl.JbpmProfileImpl$1.getDefinitions(JbpmProfileImpl.java:223)
    at org.jbpm.designer.bpmn2.validation.BPMN2SyntaxChecker.checkSyntax(BPMN2SyntaxChecker.java:40)
    at org.jbpm.designer.web.server.SyntaxCheckerServlet.doPost(SyntaxCheckerServlet.java:43)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    ...
    at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70)
    ...
- Create a Data Object from Shape Repository Panel in left pane and associate it with 'Association (undirected)' to a Sequence Flow.

If we save the process, it complains

ERROR [JbpmProfileImpl] org.eclipse.bpmn2.di.impl.BPMNEdgeImpl cannot be cast to org.eclipse.bpmn2.di.BPMNShape
java.lang.ClassCastException: org.eclipse.bpmn2.di.impl.BPMNEdgeImpl cannot be cast to org.eclipse.bpmn2.di.BPMNShape
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.marshallAssociation(Bpmn2JsonMarshaller.java:2408)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.marshallArtifact(Bpmn2JsonMarshaller.java:2362)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.marshallProcess(Bpmn2JsonMarshaller.java:446)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.marshallDefinitions(Bpmn2JsonMarshaller.java:333)
    at org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.marshall(Bpmn2JsonMarshaller.java:173)
    at org.jbpm.designer.web.profile.impl.JbpmProfileImpl$2.parseModel(JbpmProfileImpl.java:253)
    at org.jbpm.designer.web.server.UUIDBasedRepositoryServlet.doPost(UUIDBasedRepositoryServlet.java:148)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    ...
    at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70)
    ...

However there is no problem in validation this time.

Environment

  • JBoss Enterprise Business Rules Management System Platform (BRMS)
    • 5.3.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In