<< Back to previous view

[QB-4281] QB15 Error
Created: 05/Jun/26  Updated: 06/Jun/26

Status: Open
Project: QuickBuild
Component/s: None
Affects Version/s: 15.0.49
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Olga Assigned To: Steve Luo
Resolution: Unresolved Votes: 0
Remaining Estimate: Unknown Time Spent: Unknown
Original Estimate: Unknown
Environment: Prod


 Description   
The error is showing on the QB 15 when we try to click on the Parent QB server in the Grid section the UI breaks and we get this error message.

Error Details:
When we click on server node on grids page, this error appears :
Message: An error occurred while getting the model object for Component: [JFreeChartPanel [Component id = chart, page = com.pmease.quickbuild.web.page.grid.GridPage, path = tabs:panel:content:tabs:panel:content:content:sections:7:panel:content:chart, type = com.pmease.quickbuild.web.chart.JFreeChartPanel, isVisible = true, isVersioned = true]]

Root cause:

java.lang.ArrayIndexOutOfBoundsException: Index 12 out of bounds for length 12
at com.pmease.quickbuild.web.chart.Colors.getChartAWTColor(Colors.java:421)
at com.pmease.quickbuild.plugin.measurement.core.web.chart.LineChartBuilder.createRenderer(LineChartBuilder.java:308)
at com.pmease.quickbuild.plugin.measurement.core.web.chart.LineChartBuilder.createRenderers(LineChartBuilder.java:290)
at com.pmease.quickbuild.plugin.measurement.core.web.chart.LineChartBuilder.getPlot(LineChartBuilder.java:86)
at com.pmease.quickbuild.plugin.measurement.core.web.chart.LineChartBuilder.build(LineChartBuilder.java:47)
at com.pmease.quickbuild.plugin.measurement.core.web.chart.ChartFactory.buildChart(ChartFactory.java:13)
at com.pmease.quickbuild.plugin.measurement.core.web.component.MetricsChartPanel$1.getObject(MetricsChartPanel.java:113)
at com.pmease.quickbuild.plugin.measurement.core.web.component.MetricsChartPanel$1.getObject(MetricsChartPanel.java:109)
at org.apache.wicket.Component.getDefaultModelObject(Component.java:1658)
at com.pmease.quickbuild.web.chart.JFreeChartPanel.getChart(JFreeChartPanel.java:138)
at com.pmease.quickbuild.web.chart.JFreeChartPanel.onBeforeRender(JFreeChartPanel.java:79)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:143)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.Component.internalPrepareForRender(Component.java:2248)
at org.apache.wicket.Component.prepareForRender(Component.java:2287)
at org.apache.wicket.page.XmlPartialPageUpdate.writeComponent(XmlPartialPageUpdate.java:98)
at org.apache.wicket.page.PartialPageUpdate.writeComponents(PartialPageUpdate.java:248)
at org.apache.wicket.page.PartialPageUpdate.writeTo(PartialPageUpdate.java:161)
at org.apache.wicket.ajax.AjaxRequestHandler.respond(AjaxRequestHandler.java:359)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at com.pmease.quickbuild.web.MainServlet.service(MainServlet.java:138)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.equinox.http.helper.FilterServletAdaptor$FilterChainImpl.doFilter(FilterServletAdaptor.java:56)
at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:50)
at org.eclipse.equinox.http.helper.FilterServletAdaptor.service(FilterServletAdaptor.java:37)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1631)
at com.pmease.quickbuild.Quickbuild$DisableTraceFilter.doFilter(Quickbuild.java:1602)
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:516)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
at java.base/java.lang.Thread.run(Thread.java:1583)


Complete stack:

org.apache.wicket.WicketRuntimeException: An error occurred while getting the model object for Component: [JFreeChartPanel [Component id = chart, page = com.pmease.quickbuild.web.page.grid.GridPage, path = tabs:panel:content:tabs:panel:content:content:sections:7:panel:content:chart, type = com.pmease.quickbuild.web.chart.JFreeChartPanel, isVisible = true, isVersioned = true]]
at org.apache.wicket.Component.getDefaultModelObject(Component.java:1665)
at com.pmease.quickbuild.web.chart.JFreeChartPanel.getChart(JFreeChartPanel.java:138)
at com.pmease.quickbuild.web.chart.JFreeChartPanel.onBeforeRender(JFreeChartPanel.java:79)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:143)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
 at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1826)
at org.apache.wicket.Component.onBeforeRender(Component.java:3943)
at org.apache.wicket.Component.internalBeforeRender(Component.java:957)
at org.apache.wicket.Component.beforeRender(Component.java:1027)
at org.apache.wicket.Component.internalPrepareForRender(Component.java:2248)
at org.apache.wicket.Component.prepareForRender(Component.java:2287)
at org.apache.wicket.page.XmlPartialPageUpdate.writeComponent(XmlPartialPageUpdate.java:98)
at org.apache.wicket.page.PartialPageUpdate.writeComponents(PartialPageUpdate.java:248)
at org.apache.wicket.page.PartialPageUpdate.writeTo(PartialPageUpdate.java:161)
at org.apache.wicket.ajax.AjaxRequestHandler.respond(AjaxRequestHandler.java:359)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:97)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
--


 Comments   
Comment by Steve Luo [ 06/Jun/26 01:06 PM ]
This issue is same to QB-4275 and it should have been fixed in 15.0.47. I have also checked the source code and I don't know why this error still persists.

We can't reproduce this error in QB 15.0.47+ as well as in QB 16.0.12+. Would you please tell us how to reproduce this issue? Any actions you did when this error occurred?
Generated at Thu Jun 11 03:13:24 UTC 2026 using JIRA 189.