Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-1914

Improve Exception for missing assets in cockpit plugin

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: L3 - Default L3 - Default
    • 7.1.0
    • None
    • cockpit

      See https://github.com/camunda/camunda-bpm-platform/blob/master/webapps/camunda-webapp/core/src/main/java/org/camunda/bpm/cockpit/plugin/resource/AbstractPluginRootResource.java#L99

      The exception does not help in any way finding the cause of the exception. In the server log you just see the StackTrace below.

      An improvement would be to log the file name which is currently searched for and a proper exception message indicating the error. At the moment you can only debug to find the error.

      As the plugins are a proper api for customers I think this would be good to make live easier - especially because 7.0 plug-ins don't work immediately in 7.1 since alpha2 on (when the path for the cockpit plugin assets change). Bst would be to even mention the asset path in the exception giving a really good hint for developers struggling with it.


      10:26:51,430 WARNING [ExceptionHandler] (http-/127.0.0.1:8080-6) javax.ws.rs.WebApplicationException
      at org.camunda.bpm.cockpit.plugin.resource.AbstractPluginRootResource.getAsset(AbstractPluginRootResource.java:99)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
      at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:257)
      at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:222)
      at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:211)
      at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542)
      at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
      at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
      at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
      at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
      at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      at org.camunda.bpm.engine.rest.filter.CacheControlFilter.doFilter(CacheControlFilter.java:47)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      at org.camunda.bpm.webapp.impl.security.filter.SecurityFilter.doFilterSecure(SecurityFilter.java:67)
      at org.camunda.bpm.webapp.impl.security.filter.SecurityFilter.doFilter(SecurityFilter.java:51)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      at org.camunda.bpm.webapp.impl.security.auth.AuthenticationFilter$1.execute(AuthenticationFilter.java:59)
      at org.camunda.bpm.webapp.impl.security.auth.AuthenticationFilter$1.execute(AuthenticationFilter.java:56)
      at org.camunda.bpm.webapp.impl.security.SecurityActions.runWithAuthentications(SecurityActions.java:38)
      at org.camunda.bpm.webapp.impl.security.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:56)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
      at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
      at java.lang.Thread.run(Thread.java:724)

        This is the controller panel for Smart Panels app

            [CAM-1914] Improve Exception for missing assets in cockpit plugin

            Bernd Ruecker created issue -
            Robert Gimbel made changes -
            Issue Type Original: Feature Request [ 2 ] New: Task [ 3 ]
            Robert Gimbel made changes -
            Labels New: EasyPick
            Roman Smirnov made changes -
            Status Original: Open [ 1 ] New: In Progress [ 3 ]
            Roman Smirnov made changes -
            Assignee New: Roman Smirnov [ smirnov ]
            Roman Smirnov made changes -
            Assignee Original: Roman Smirnov [ smirnov ]
            Resolution New: Fixed [ 1 ]
            Status Original: In Progress [ 3 ] New: Resolved [ 5 ]
            Remaining Estimate New: 0 minutes [ 0 ]
            Original Estimate New: 0 minutes [ 0 ]
            user-a6477 (Inactive) made changes -
            Assignee New: Daniel Meyer [ meyer ]
            Daniel Meyer made changes -
            Status Original: Resolved [ 5 ] New: In Test [ 10004 ]
            Daniel Meyer made changes -
            Assignee Original: Daniel Meyer [ meyer ] New: Michael Schoettes [ michael.schoettes ]
            Michael Schoettes made changes -
            Status Original: In Test [ 10004 ] New: Closed [ 6 ]

              michael.schoettes Michael Schoettes
              ruecker Bernd Ruecker
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: