Fixes are available
APAR status
Closed as program error.
Error description
"ArrayIndexOutOfBounds exception from hx:panelRowCategory when category list is 0" JSF web page using IBM JWL on WAS 8.5.5 with Sun JSF RI 1.2 encountering an exception using hx:behavior inside h:panelGrid of h:dataTable. The exception did not occur on the first event when changing the value of a row to one of 3 choices in a dropdown. It was necessary to try several time to reproduce. It was intermittant Error excerpt in WAS SystemOut.log: ... .. [9/21/15 16:22:34:275 EDT] 0000007f lifecycle E JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /{some test JSP}.jsp) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.Life cycleImpl@c0bfb8b5] [9/21/15 16:22:34:295 EDT] 0000007f ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0014E: Uncaught service() exception root cause Faces Servlet: javax.servlet.ServletException at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWr apper.java:1230) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser vletWrapper.java:779) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser vletWrapper.java:478) at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl.java:178) at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters (WebAppFilterManager.java:1114) at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleReques t(CacheServletWrapper.java:87) at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer. java:939) at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContai ner.java:1662) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLin k.java:200) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscr imination(HttpInboundLink.java:463) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRe quest(HttpInboundLink.java:530) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequ est(HttpInboundLink.java:316) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpI nboundLink.java:287) at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sen dToDiscriminators(NewConnectionInitialReadCallback.java:214) at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.com plete(NewConnectionInitialReadCallback.java:113) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureComp leted(AioReadCompletionListener.java:175) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyn cFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncC hannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHand ler.java:775) at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881) Caused by: java.lang.ArrayIndexOutOfBoundsException at java.util.Vector.elementData(Vector.java:742) at java.util.Vector.get(Vector.java:758) at com.ibm.faces.renderkit.html_extended.RowCategoryRenderer.isCate goryExists(RowCategoryRenderer.java:552) at com.ibm.faces.renderkit.html_extended.RowCategoryRenderer.encode End(RowCategoryRenderer.java:217) at com.ibm.faces.renderkit.DefaultAjaxRenderer.encodeEnd(DefaultAja xRenderer.java:83) at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase. java:860) at com.ibm.faces.renderkit.html_extended.Utils.encodeComponent(Util s.java:193) at com.ibm.faces.renderkit.html_extended.DataTableRenderer.encodeCh ildren(DataTableRenderer.java:1101) at com.ibm.faces.renderkit.DefaultAjaxRenderer.encodeChildren(Defau ltAjaxRenderer.java:73) at javax.faces.component.UIComponentBase.encodeChildren(UIComponent Base.java:836) at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecur sive(HtmlBasicRenderer.java:234) at com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRe nderer.java:178) at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(G ridRenderer.java:126) at com.ibm.faces.renderkit.DefaultAjaxRenderer.encodeChildren(Defau ltAjaxRenderer.java:73) at javax.faces.component.UIComponentBase.encodeChildren(UIComponent Base.java:836) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:936 ) at javax.faces.render.Renderer.encodeChildren(Renderer.java:148) at com.ibm.faces.renderkit.DefaultAjaxRenderer.encodeChildren(Defau ltAjaxRenderer.java:73) at javax.faces.component.UIComponentBase.encodeChildren(UIComponent Base.java:836) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:936 ) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942 ) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942 ) at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandl erImpl.java:292) at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandler Impl.java:223) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderRespon sePhase.java:114) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java: 139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) ... 23 more Trying to access a position that might not exists in an array, i.e: if "categoryList.size()" is 0 then is subtracting 1, so is trying to access the possition -1, which does not exist.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * All users of the JWL provided in Rational Application * * Developer * **************************************************************** * PROBLEM DESCRIPTION: * * JSF web page using IBM JWL on WAS 8.5.5 with Sun JSF RI 1.2 * * encountering an exception using <hx:behavior> inside * * <h:panelGrid> of <h:dataTable>. * **************************************************************** * RECOMMENDATION: * ****************************************************************
Problem conclusion
The fix for this APAR is included in Rational Application Developer v8.5.5.3.
Temporary fix
Comments
APAR Information
APAR number
PI49131
Reported component name
RATL APP DEV WI
Reported component ID
5724J1901
Reported release
855
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2015-09-21
Closed date
2015-12-21
Last modified date
2015-12-21
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
RATL APP DEV WI
Fixed component ID
5724J1901
Applicable component levels
R855 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSRTLW","label":"Rational Application Developer for WebSphere Software"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"855","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
17 October 2021