Uploaded image for project: 'OpenIDM'
  1. OpenIDM
  2. OPENIDM-6315

The admin UI pops up an error message about a previously removed workflow

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Won't Fix
    • Affects Version/s: OpenIDM 4.0.0, OpenIDM 4.5.0
    • Fix Version/s: None
    • Component/s: Module - Workflow
    • Labels:
    • Environment:

      Description

      When deleting a workflow (which has no running instances) for which an instance has been fired and completed at least once with a DELETE REST request, then the workflow definition is removed as expected but then, the admin UI always first pops up an error message about that workflow, in the "Active" tab of the "Manage Workflow Processes" page, and then a second "internal error" pop up window replaces the 1st one.

      As a side effect, the "Active" tab remains empty. Also, both pop up windows appear when reloading the page.

      For example, if the REST request URI was /openidm/workflow/processdefinition/myWorkFlowId:1:10

      The error message is:

      no deployed process definition found with id 'myWorkFlowId:1:10'

      The full error stack is:

      juil. 27, 2016 3:03:13 PM org.forgerock.openidm.servlet.internal.ServletConnectionFactory$4 handleException
      AVERTISSEMENT: Resource exception: 500 Internal Server Error: "no deployed process definition found with id 'myWorkFlowId:1:10'"
      org.forgerock.json.resource.InternalServerErrorException: no deployed process definition found with id 'myWorkFlowId:1:10'
      at org.forgerock.openidm.workflow.activiti.impl.ProcessInstanceResource.queryCollection(ProcessInstanceResource.java:228)
      at org.forgerock.json.resource.InterfaceCollectionHandler.handleQuery(InterfaceCollectionHandler.java:62)
      at org.forgerock.json.resource.Router.handleQuery(Router.java:310)
      at org.forgerock.json.resource.Router.handleQuery(Router.java:310)
      at org.forgerock.openidm.workflow.activiti.impl.ActivitiResource.handleQuery(ActivitiResource.java:94)
      at org.forgerock.openidm.workflow.activiti.impl.ActivitiServiceImpl.handleQuery(ActivitiServiceImpl.java:231)
      at org.forgerock.json.resource.Router.handleQuery(Router.java:310)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:99)
      at org.forgerock.json.resource.Filters$ConditionalFilter.filterQuery(Filters.java:92)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.json.resource.Filters$ConditionalFilter.filterQuery(Filters.java:92)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.openidm.filter.ScriptedFilter$7.apply(ScriptedFilter.java:165)
      at org.forgerock.openidm.filter.ScriptedFilter$7.apply(ScriptedFilter.java:162)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:255)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:244)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:223)
      at org.forgerock.openidm.filter.ScriptedFilter.filterRequest(ScriptedFilter.java:190)
      at org.forgerock.openidm.filter.ScriptedFilter.filterQuery(ScriptedFilter.java:161)
      at org.forgerock.json.resource.Filters$ConditionalFilter.filterQuery(Filters.java:90)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.openidm.audit.filter.AuditFilter$5.apply(AuditFilter.java:148)
      at org.forgerock.openidm.audit.filter.AuditFilter$5.apply(AuditFilter.java:145)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:255)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:244)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:223)
      at org.forgerock.openidm.audit.filter.AuditFilter.logAuditAccessEntry(AuditFilter.java:204)
      at org.forgerock.openidm.audit.filter.AuditFilter.filterQuery(AuditFilter.java:144)
      at org.forgerock.json.resource.Filters$ConditionalFilter.filterQuery(Filters.java:90)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.openidm.servlet.internal.ServletConnectionFactory$5.filterQuery(ServletConnectionFactory.java:513)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.openidm.filter.PassthroughFilter.filterQuery(PassthroughFilter.java:74)
      at org.forgerock.openidm.filter.MutableFilterDecorator.filterQuery(MutableFilterDecorator.java:82)
      at org.forgerock.json.resource.FilterChain$Cursor.handleQuery(FilterChain.java:97)
      at org.forgerock.json.resource.FilterChain.handleQuery(FilterChain.java:231)
      at org.forgerock.json.resource.InternalConnection.queryAsync(InternalConnection.java:78)
      at org.forgerock.json.resource.AbstractConnectionWrapper.queryAsync(AbstractConnectionWrapper.java:189)
      at org.forgerock.openidm.servlet.internal.ServletConnectionFactory$1$1.queryAsync(ServletConnectionFactory.java:307)
      at org.forgerock.json.resource.http.RequestRunner.visitQueryRequest(RequestRunner.java:238)
      at org.forgerock.json.resource.http.RequestRunner.visitQueryRequest(RequestRunner.java:73)
      at org.forgerock.json.resource.Requests$QueryRequestImpl.accept(Requests.java:448)
      at org.forgerock.json.resource.http.RequestRunner.handleResult(RequestRunner.java:119)
      at org.forgerock.json.resource.http.HttpAdapter$2.apply(HttpAdapter.java:566)
      at org.forgerock.json.resource.http.HttpAdapter$2.apply(HttpAdapter.java:563)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:255)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:244)
      at org.forgerock.json.resource.http.HttpAdapter.doRequest(HttpAdapter.java:562)
      at org.forgerock.json.resource.http.HttpAdapter.doQuery(HttpAdapter.java:358)
      at org.forgerock.json.resource.http.HttpAdapter.handle(HttpAdapter.java:173)
      at org.forgerock.http.filter.OptionsFilter.filter(OptionsFilter.java:77)
      at org.forgerock.http.handler.Handlers$1.handle(Handlers.java:56)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework.grantAccess(AuthenticationFramework.java:220)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework.access$400(AuthenticationFramework.java:65)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework$3.apply(AuthenticationFramework.java:212)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework$3.apply(AuthenticationFramework.java:205)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:255)
      at org.forgerock.util.promise.Promises$CompletedPromise.thenAsync(Promises.java:244)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework.validateRequest(AuthenticationFramework.java:168)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework.access$100(AuthenticationFramework.java:65)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework$1.apply(AuthenticationFramework.java:155)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework$1.apply(AuthenticationFramework.java:152)
      at org.forgerock.util.promise.PromiseImpl$7.handleStateChange(PromiseImpl.java:485)
      at org.forgerock.util.promise.PromiseImpl.handleCompletion(PromiseImpl.java:567)
      at org.forgerock.util.promise.PromiseImpl.addOrFireListener(PromiseImpl.java:555)
      at org.forgerock.util.promise.PromiseImpl.thenAsync(PromiseImpl.java:477)
      at org.forgerock.util.promise.PromiseImpl.thenAsync(PromiseImpl.java:468)
      at org.forgerock.caf.authentication.framework.AuthenticationFramework.processMessage(AuthenticationFramework.java:146)
      at org.forgerock.caf.authentication.framework.AuthenticationFilter.filter(AuthenticationFilter.java:96)
      at org.forgerock.openidm.auth.AuthFilterWrapper.filter(AuthFilterWrapper.java:90)
      at org.forgerock.http.handler.Handlers$1.handle(Handlers.java:56)
      at org.forgerock.http.filter.TransactionIdInboundFilter.filter(TransactionIdInboundFilter.java:60)
      at org.forgerock.http.handler.Handlers$1.handle(Handlers.java:56)
      at org.forgerock.http.servlet.HttpFrameworkServlet.service(HttpFrameworkServlet.java:225)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
      at org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:256)
      at org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:219)
      at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at org.forgerock.openidm.servletregistration.impl.ServletRegistrationSingleton$FilterProxy.invoke(ServletRegistrationSingleton.java:295)
      at com.sun.proxy.$Proxy27.doFilter(Unknown Source)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83)
      at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:364)
      at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at org.forgerock.openidm.servletregistration.impl.ServletRegistrationSingleton$FilterProxy.invoke(ServletRegistrationSingleton.java:295)
      at com.sun.proxy.$Proxy27.doFilter(Unknown Source)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
      at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:70)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
      at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:271)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
      at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
      at org.eclipse.jetty.server.Server.handle(Server.java:499)
      at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
      at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
      at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
      at java.lang.Thread.run(Thread.java:745)
      Caused by: org.activiti.engine.ActivitiObjectNotFoundException: no deployed process definition found with id 'myWorkFlowId:1:10'
      at org.activiti.engine.impl.persistence.deploy.DeploymentManager.findDeployedProcessDefinitionById(DeploymentManager.java:63)
      at org.activiti.engine.impl.cmd.GetDeploymentProcessDefinitionCmd.execute(GetDeploymentProcessDefinitionCmd.java:37)
      at org.activiti.engine.impl.cmd.GetDeploymentProcessDefinitionCmd.execute(GetDeploymentProcessDefinitionCmd.java:27)
      at org.activiti.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:24)
      at org.activiti.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:57)
      at org.activiti.engine.impl.interceptor.JtaTransactionInterceptor.execute(JtaTransactionInterceptor.java:64)
      at org.activiti.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:31)
      at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:40)
      at org.activiti.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:35)
      at org.activiti.engine.impl.RepositoryServiceImpl.getProcessDefinition(RepositoryServiceImpl.java:130)
      at org.forgerock.openidm.workflow.activiti.impl.ProcessInstanceResource.getProcessDefName(ProcessInstanceResource.java:402)
      at org.forgerock.openidm.workflow.activiti.impl.ProcessInstanceResource.queryCollection(ProcessInstanceResource.java:220)
      ... 112 more

      Please notice that this problem doesn't seem to occur if no instance of the workflow was fired and completed previoulsy.

        Attachments

          Activity

            People

            Assignee:
            alin Alin Brici
            Reporter:
            cgrosjean Cyril Grosjean
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: