Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-3127

Queue browser in web console leads to IllegalArgumentException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.15.0
    • 2.17.0
    • JMX, Web Console
    • None

    Description

      The browse message view of the web console does not display any messages in case the console is running on a public address - when the console is started on "localhost" or "127.0.0.1" it works fine.

      The exception that is logged to the JS console on client side is shown here:

      The location where the Exception is thrown on server side is shown here:

      I also attached a text file that shows the length and contents of the arrays that seem to cause the exception (please note that the contents of that file show a different incident than the one shown in the client side screenshot).

      Below is a stack trace of such a situation:

      CompositeType.<init>(String, String, String[], String[], OpenType<?>[]) line: 139
      CompositeType.<init>(String, String, String[], String[], OpenType<?>[]) line: 139
      OpenTypeSupport$TextMessageOpenTypeFactory(OpenTypeSupport$MessageOpenTypeFactory).createCompositeType() line: 215
      OpenTypeSupport$TextMessageOpenTypeFactory(OpenTypeSupport$MessageOpenTypeFactory).getCompositeType() line: 93
      OpenTypeSupport.convert(MessageReference) line: 59
      QueueControlImpl.browse(int, int) line: 1510
      NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]NativeMethodAccessorImpl.invoke(Object, Object[]) line: 62
      DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
      Method.invoke(Object, Object...) line: 498
      Trampoline.invoke(Method, Object, Object[]) line: 71
      GeneratedMethodAccessor139.invoke(Object, Object[]) line: not availableDelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
      Method.invoke(Object, Object...) line: 498
      MethodUtil.invoke(Method, Object, Object[]) line: 275
      StandardMBeanIntrospector.invokeM2(Method, Object, Object[], Object) line: 112
      StandardMBeanIntrospector.invokeM2(Object, Object, Object[], Object) line: 46
      StandardMBeanIntrospector(MBeanIntrospector<M>).invokeM(M, Object, Object[], Object) line: 237
      PerInterface<M>.invoke(Object, String, Object[], String[], Object) line: 138
      StandardMBeanSupport(MBeanSupport<M>).invoke(String, Object[], String[]) line: 252
      QueueControlImpl(StandardMBean).invoke(String, Object[], String[]) line: 405
      DefaultMBeanServerInterceptor.invoke(ObjectName, String, Object[], String[]) line: 819
      JmxMBeanServer.invoke(ObjectName, String, Object[], String[]) line: 801
      ExecHandler.doHandleRequest(MBeanServerConnection, JmxExecRequest) line: 98
      ExecHandler.doHandleRequest(MBeanServerConnection, JmxRequest) line: 40
      ExecHandler(JsonRequestHandler<R>).handleRequest(MBeanServerConnection, R) line: 89
      MBeanServerExecutorLocal.handleRequest(JsonRequestHandler<R>, R) line: 109
      MBeanServerHandler.dispatchRequest(JsonRequestHandler, JmxRequest) line: 161
      LocalRequestDispatcher.dispatchRequest(JmxRequest) line: 99
      BackendManager.callRequestDispatcher(JmxRequest) line: 429
      BackendManager.handleRequest(JmxRequest) line: 158
      HttpRequestHandler.executeRequest(JmxRequest) line: 197
      HttpRequestHandler.handlePostRequest(String, InputStream, String, Map<String,String[]>) line: 137
      AgentServlet$3.handleRequest(HttpServletRequest, HttpServletResponse) line: 460
      JolokiaConfiguredAgentServlet(AgentServlet).handleSecurely(AgentServlet$ServletRequestHandler, HttpServletRequest, HttpServletResponse) line: 350
      JolokiaConfiguredAgentServlet(AgentServlet).handle(AgentServlet$ServletRequestHandler, HttpServletRequest, HttpServletResponse) line: 321
      JolokiaConfiguredAgentServlet(AgentServlet).doPost(HttpServletRequest, HttpServletResponse) line: 284
      JolokiaConfiguredAgentServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: 707
      JolokiaConfiguredAgentServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 790
      ServletHolder$NotAsyncServlet.service(ServletRequest, ServletResponse) line: 1395
      ServletHolder.handle(Request, ServletRequest, ServletResponse) line: 755
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1617
      AuthenticationFilter$3.run() line: 227
      AccessController.doPrivileged(PrivilegedExceptionAction<T>, AccessControlContext) line: not available [native method]Subject.doAs(Subject, PrivilegedExceptionAction<T>) line: 422
      AuthenticationFilter.executeAs(ServletRequest, ServletResponse, FilterChain, Subject) line: 224
      AuthenticationFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 162
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      PublicKeyPinningFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      StrictTransportSecurityFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      ContentSecurityPolicyFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      XContentTypeOptionsFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      XXSSProtectionFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      XFrameOptionsFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      CORSFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      CacheHeadersFilter(HttpHeaderFilter).doFilter(ServletRequest, ServletResponse, FilterChain) line: 37
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      SessionExpiryFilter.process(HttpServletRequest, HttpServletResponse, FilterChain) line: 176
      SessionExpiryFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 69
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1604
      RedirectFilter.process(HttpServletRequest, HttpServletResponse, FilterChain) line: 86
      RedirectFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 72
      ServletHandler$CachedChain.doFilter(ServletRequest, ServletResponse) line: 1596
      ServletHandler.doHandle(String, Request, HttpServletRequest, HttpServletResponse) line: 545
      ServletHandler(ScopedHandler).handle(String, Request, HttpServletRequest, HttpServletResponse) line: 143
      ConstraintSecurityHandler(SecurityHandler).handle(String, Request, HttpServletRequest, HttpServletResponse) line: 590
      SessionHandler(HandlerWrapper).handle(String, Request, HttpServletRequest, HttpServletResponse) line: 127
      SessionHandler(ScopedHandler).nextHandle(String, Request, HttpServletRequest, HttpServletResponse) line: 235
      SessionHandler.doHandle(String, Request, HttpServletRequest, HttpServletResponse) line: 1607
      WebAppContext(ScopedHandler).nextHandle(String, Request, HttpServletRequest, HttpServletResponse) line: 233
      WebAppContext(ContextHandler).doHandle(String, Request, HttpServletRequest, HttpServletResponse) line: 1297
      ServletHandler(ScopedHandler).nextScope(String, Request, HttpServletRequest, HttpServletResponse) line: 188
      ServletHandler.doScope(String, Request, HttpServletRequest, HttpServletResponse) line: 485
      SessionHandler.doScope(String, Request, HttpServletRequest, HttpServletResponse) line: 1577
      WebAppContext(ScopedHandler).nextScope(String, Request, HttpServletRequest, HttpServletResponse) line: 186
      WebAppContext(ContextHandler).doScope(String, Request, HttpServletRequest, HttpServletResponse) line: 1212
      WebAppContext(ScopedHandler).handle(String, Request, HttpServletRequest, HttpServletResponse) line: 141
      HandlerList.handle(String, Request, HttpServletRequest, HttpServletResponse) line: 59
      Server(HandlerWrapper).handle(String, Request, HttpServletRequest, HttpServletResponse) line: 127
      Server.handle(HttpChannel) line: 500
      HttpChannelOverHttp(HttpChannel).lambda$handle$1() line: 383
      634335530.dispatch() line: not availableHttpChannelOverHttp(HttpChannel).dispatch(DispatcherType, HttpChannel$Dispatchable) line: 547
      HttpChannelOverHttp(HttpChannel).handle() line: 375
      HttpConnection.onFillable() line: 270
      AbstractConnection$ReadCallback.succeeded() line: 311
      AbstractEndPoint$1(FillInterest).fillable() line: 103
      ChannelEndPoint$2.run() line: 117
      EatWhatYouKill.runTask(Runnable) line: 336
      EatWhatYouKill.doProduce(boolean) line: 313
      EatWhatYouKill.tryProduce(boolean) line: 171
      EatWhatYouKill.run() line: 129
      ReservedThreadExecutor$ReservedThread.run() line: 388
      QueuedThreadPool.runJob(Runnable) line: 806
      QueuedThreadPool$Runner.run() line: 938
      Thread.run() line: 748
      

      Attachments

        1. js_exception_client.PNG
          30 kB
          Christian Danner
        2. exception_server.PNG
          48 kB
          Christian Danner
        3. variable_values.txt
          9 kB
          Christian Danner

        Activity

          People

            Unassigned Unassigned
            perdurabo Christian Danner
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: