Please send down the fix (or a patch preferrably) down the jira at the same issue number, so that it does not get lost ;-) posting the fix in the users list is a bad idea, because it might get overlooked.
Adrien FOURES schrieb: > Hello i have strated to build my application with the myfaces tree > component since the 2004, before the tree2 was build, and i have not > enough time to change. > But i find bug in the tree component, Oliver Rossmueller have add this > bug in jira list with 103 codename. > I have download source code, and i thinks i have found something which > maybe not solve problem, but will maybe stop the exception. > Please Please Please, Can you bring this modification in the next > <http://svn.apache.org/builds/myfaces/nightly>nightly version > > Thanks, > > > HtmlTreeNode > translatePath > line 528 > protected static TreePath translatePath(int[] path, TreeModel model) > { > Object[] translated = new Object[path.length + 1]; > Object parent = model.getRoot(); > > translated[0] = parent; > > for (int i = 0; i < path.length; i++) > { > /***********ADD************/ > *if( (TreeNode)parent.getChildCount()>=index ){ > */***********ADD************/ > > int index = path[i]; > translated[i + 1] = model.getChild(parent, index); > parent = translated[i + 1]; > > /***********ADD************/ > *}* > /***********ADD************/ > > } > return new TreePath(translated); > } > > > > > Exception > > java.lang.IndexOutOfBoundsException: Index: 1, Size: 0 > at java.util.ArrayList.RangeCheck(ArrayList.java:507) > at java.util.ArrayList.get(ArrayList.java:324) > at > org.apache.myfaces.custom.tree.DefaultMutableTreeNode.getChildAt(DefaultMutableTreeNode.java:154) > at > org.apache.myfaces.custom.tree.model.DefaultTreeModel.getChild(DefaultTreeModel.java:81) > at > org.apache.myfaces.custom.tree.HtmlTreeNode.translatePath(HtmlTreeNode.java:537) > at > org.apache.myfaces.custom.tree.HtmlTree.selectionChanged(HtmlTree.java:586) > at > org.apache.myfaces.custom.tree.HtmlTreeNode.setSelected(HtmlTreeNode.java:412) > at > org.apache.myfaces.custom.tree.HtmlTreeNode.setExpanded(HtmlTreeNode.java:331) > at > org.apache.myfaces.custom.tree.HtmlTree.collapsePath(HtmlTree.java:536) > at > org.apache.myfaces.custom.tree.HtmlTree.treeStructureChanged(HtmlTree.java:817) > at > org.apache.myfaces.custom.tree.HtmlTree$Event.process(HtmlTree.java:1044) > at > org.apache.myfaces.custom.tree.HtmlTree.processModelEvents(HtmlTree.java:879) > at org.apache.myfaces.custom.tree.HtmlTree.encodeBegin(HtmlTree.java:721) > at javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:591) > at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:543) > at > org.apache.jsp.page.private_.tree1_jsp._jspx_meth_x_tree_0(tree1_jsp.java:430) > at > org.apache.jsp.page.private_.tree1_jsp._jspx_meth_f_view_0(tree1_jsp.java:181) > at org.apache.jsp.page.private_.tree1_jsp._jspService(tree1_jsp.java:138) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704) > at > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474) > at > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409) > at > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312) > at > com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322) > at > com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130) > at > com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87) > at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200) > at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) > at dosmed.security.LoginFilter.doFilter(LoginFilter.java:60) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) > at > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) > at > org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) > at > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) > at > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) > at > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) > at > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) > at > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) > at java.lang.Thread.run(Thread.java:534) > > >

