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, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content