Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-25553

Workflow designer breaks when a transition have an destination step called "originating step" (-1).

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Low
    • 5.0.1
    • 4.4
    • None
    • JIRA Standalone 4.4

    Description

      When one or more transitions in a workflow have a destination step called "The Originating Step", workflow designer breaks and throws the following stacktrace:

      com.exadel.flamingo.service.exception.ServiceInvokationException: java.lang.reflect.InvocationTargetException
      	at com.exadel.flamingo.service.spring.utils.AMFSpringMethodInvoker.makeCall(AMFSpringMethodInvoker.java:150)
      	at com.sysbliss.jira.plugins.workflow.amf.JWDAMF3RemotingMessageProcessor.process(JWDAMF3RemotingMessageProcessor.java:56)
      	at com.sysbliss.jira.plugins.workflow.amf.JWDAMF3MessageProcessor.process(JWDAMF3MessageProcessor.java:47)
      	at com.exadel.flamingo.flex.amf.process.AMF0MessageProcessor.process(AMF0MessageProcessor.java:63)
      	at com.exadel.flamingo.flex.amf.process.AMF0MessageProcessor.process(AMF0MessageProcessor.java:40)
      	at com.sysbliss.jira.plugins.workflow.amf.JWDAMFRequestProcessor.process(JWDAMFRequestProcessor.java:64)
      	at com.sysbliss.jira.plugins.workflow.amf.JWDAMFServlet.service(JWDAMFServlet.java:26)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at com.atlassian.plugin.servlet.DelegatingPluginServlet.service(DelegatingPluginServlet.java:42)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at com.atlassian.plugin.servlet.ServletModuleContainerServlet.service(ServletModuleContainerServlet.java:52)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.web.filters.steps.ChainedFilterStepRunner.doFilter(ChainedFilterStepRunner.java:74)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.core.filters.HeaderSanitisingFilter.doFilter(HeaderSanitisingFilter.java:44)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      	at com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.web.filters.accesslog.AccessLogFilter.executeRequest(AccessLogFilter.java:103)
      	at com.atlassian.jira.web.filters.accesslog.AccessLogFilter.doFilter(AccessLogFilter.java:87)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.security.xsrf.XsrfTokenAdditionRequestFilter.doFilter(XsrfTokenAdditionRequestFilter.java:54)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)
      	at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:211)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:150)
      	at com.atlassian.jira.web.filters.JiraLoginFilter.doFilter(JiraLoginFilter.java:70)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      	at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:71)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:99)
      	at com.atlassian.jira.web.filters.JIRAProfilingFilter.doFilter(JIRAProfilingFilter.java:19)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:71)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:350)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.gzipfilter.GzipFilter.doFilterInternal(GzipFilter.java:75)
      	at com.atlassian.gzipfilter.GzipFilter.doFilter(GzipFilter.java:51)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
      	at com.sysbliss.jira.plugins.workflow.servlet.JWDSendRedirectFilter.doFilter(JWDSendRedirectFilter.java:25)
      	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
      	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
      	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.web.filters.steps.ChainedFilterStepRunner.doFilter(ChainedFilterStepRunner.java:74)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.core.filters.cache.AbstractCachingFilter.doFilter(AbstractCachingFilter.java:33)
      	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.core.filters.encoding.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:41)
      	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
      	at com.atlassian.jira.web.filters.PathMatchingEncodingFilter.doFilter(PathMatchingEncodingFilter.java:49)
      	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.web.monitor.ActiveRequestsFilter$PassToChainFilterFunc.doFilter(ActiveRequestsFilter.java:346)
      	at com.atlassian.jira.web.monitor.ActiveRequestsFilter$DebugLogFilterFunc.doFilter(ActiveRequestsFilter.java:463)
      	at com.atlassian.jira.web.monitor.ActiveRequestsFilter.doFilter(ActiveRequestsFilter.java:173)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.startup.JiraStartupChecklistFilter.doFilter(JiraStartupChecklistFilter.java:75)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.multitenant.servlet.MultiTenantServletFilter.doFilter(MultiTenantServletFilter.java:91)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at com.atlassian.jira.web.filters.steps.ChainedFilterStepRunner.doFilter(ChainedFilterStepRunner.java:74)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:554)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
      	at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
      	at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
      	at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at com.exadel.flamingo.service.spring.utils.AMFSpringMethodInvoker.makeCall(AMFSpringMethodInvoker.java:141)
      	... 124 more
      Caused by: com.sysbliss.jira.plugins.workflow.exception.WorkflowDesignerServiceException: Error Loading Saved Layout
      	at com.sysbliss.jira.plugins.workflow.service.WorkflowDesignerServiceImpl.loadLayout(WorkflowDesignerServiceImpl.java:1416)
      	... 129 more
      Caused by: java.lang.NullPointerException
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createUIDForStep(WorkflowToJWDLayout.java:194)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:99)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgesForStartNode(WorkflowToJWDLayout.java:133)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createNodeLayout(WorkflowToJWDLayout.java:123)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.createEdgeLayout(WorkflowToJWDLayout.java:171)
      	at com.sysbliss.jira.plugins.workflow.jgraph.WorkflowToJWDLayout.transform(WorkflowToJWDLayout.java:45)
      	at com.sysbliss.jira.plugins.workflow.manager.WorkflowLayoutManagerImpl.getLayoutForWorkflow(WorkflowLayoutManagerImpl.java:116)
      	at com.sysbliss.jira.plugins.workflow.service.WorkflowDesignerServiceImpl.loadLayout(WorkflowDesignerServiceImpl.java:1414)
      	... 129 more
      ...
      

      If we change the destination step for a transition to a valid step, workflow designer works fine.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              cgauterio Clarissa Gauterio (Inactive)
              Votes:
              5 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: