`
zhouchaofei2010
  • 浏览: 1097438 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JSF,primeface3.5的树形组件bug

 
阅读更多

异常:

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
   at java.util.ArrayList.rangeCheck(ArrayList.java:604)
   at java.util.ArrayList.get(ArrayList.java:382)
   at org.primefaces.component.api.UITree.findTreeNode(UITree.java:121)
   at org.primefaces.component.api.UITree.setRowKey(UITree.java:80)
   at org.primefaces.component.api.UITree.visitTree(UITree.java:417)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at org.primefaces.component.tabview.TabView.visitTree(TabView.java:419)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIForm.visitTree(UIForm.java:371)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at javax.faces.component.UIComponent.visitTree(UIComponent.java:1623)
   at com.sun.faces.context.PartialViewContextImpl.processComponents(PartialViewContextImpl.java:378)
   at com.sun.faces.context.PartialViewContextImpl.processPartial(PartialViewContextImpl.java:298)
   at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:183)
   at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:183)
   at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:973)
   at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1779)
   at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:413)
   at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:124)
   at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:286)
   at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
   at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
   at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
   at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
   at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:79)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
   at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
   at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
   at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
   at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
   at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
   at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
   at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
   at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
   at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
   at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
   at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
   at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
   at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
   at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
   at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
   at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
   at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
   at java.lang.Thread.run(Thread.java:722)

 

 

版本:primeface3.5

 

发生在什么时候:

页面选择子节点后,再次进行请求操作,比如查询、数据下载等

Apparently during render Response phase, it was always trying to look in the first treeNode even though the node that we are currently working is from second or subsequent treeNodes.

http://forum.primefaces.org/viewtopic.php?f=3&t=29732

 

解决参考:

1、为了解决树的再次选择,需要在操作之前执行更新树

参考:

http://stackoverflow.com/questions/15937358/primefaces-treetable-deleting-node-using-pajax-not-work

 

2、解决提交报异常,修改源代码。参考:

http://forum.primefaces.org/viewtopic.php?f=3&t=28544

 

 

 

分享到:
评论

相关推荐

    jsf组件树相关资料

    它提供了一种声明式的方式来创建用户界面,其中JSF组件树是其核心概念。JSF组件树是由多个组件构成的层次结构,这些组件可以是HTML元素、自定义组件或者其他复杂的UI结构。在JSF生命周期中,组件树扮演着至关重要的...

    编写JSF用户自定义UI组件(之五)

    在JSF(JavaServer Faces)框架中,用户自定义UI组件是实现个性化界面和扩展功能的关键部分。这篇博文“编写JSF用户自定义UI组件(之五)”可能深入探讨了如何创建和使用自定义组件的过程,虽然描述部分为空,但我们...

    JSF Richfaces构建树

    通过使用JavaServer Faces (JSF) 和 RichFaces 的 `<t:tree>` 组件,可以高效地构建出功能丰富且具有良好用户体验的树形菜单。选择合适的数据结构和构建策略对于确保系统的性能和可维护性至关重要。此外,通过合理...

    《JSF自定义组件》

    ### JSF自定义组件知识点详解 #### 一、JSF生命周期与组件概述 **1.1 JSF生命周期** JavaServer Faces (JSF) 是一种基于Java的Web应用框架,主要用于构建用户界面。为了更好地理解如何自定义JSF组件,首先需要...

    JSF分页组件2

    **JSF分页组件2详解** JavaServer Faces (JSF) 是Java平台上的一个用于构建Web应用程序的MVC(Model-View-Controller)框架。在处理大量数据时,分页功能是必不可少的,它能够帮助用户更有效地浏览和管理信息。在...

    JSF2.0实战 - 4、自定义组件

    在JavaServer Faces (JSF) 2.0中,自定义组件是开发人员扩展框架功能的关键方式。通过创建自定义组件,你可以构建符合特定需求的用户界面元素,这些元素可以复用并集成到多个JSF应用程序中。本教程将深入探讨如何在...

    JSF1.2日历组件

    3. **组件属性**:JSF组件可以有各种属性,如`value`表示组件的当前值,`converter`用于转换用户输入,以及`rendered`决定组件是否应在页面上渲染。日历组件可能包含`date`属性,用于存储选择的日期,以及`...

    jsf组件开发源码

    在"jsf组件开发源码"中,我们很可能是要探讨如何创建自定义的JSF组件,以及源码背后的实现逻辑。 首先,JSF组件是由UIComponent类及其子类构成的。每个组件都是一个独立的UI元素,具有渲染、属性和事件处理能力。...

    用jsf做的登录注册的组件

    2. **JSF组件**:JSF的核心是UI组件库,如`h:inputText`用于输入文本,`h:commandButton`用于提交表单等。这些组件可以直接在JSP或Facelets页面中使用,简化了前端开发。 3. **登录与注册**:登录注册功能通常包括...

    JSF创建自定义组件

    【JSF创建自定义组件】 JSF(JavaServer Faces)是一种用于构建Web应用程序的MVC框架,它允许开发者创建可重用的UI组件。在JSF中,自定义组件允许开发人员扩展框架的功能,以满足特定项目的需求。下面将详细解释...

    jsf自定义组件.pdf

    ### JSF自定义组件知识点详解 #### 一、JSF生命周期与组件概述 **1.1 JSF生命周期** JavaServer Faces (JSF) 是一种基于Java的Web应用框架,主要用于构建用户界面。为了更好地理解如何自定义JSF组件,首先需要...

    jsf2.0 文件上传组件

    由于JSF2.0标准实现没有提供文件上传组件,而实际应用中很多时候需要上传文件,为了方便开发,我做了一个基于JSF2.0的文件上传组件,上传使用的是Apache 的commons-fileupload组件,我已经将commons-fileupload-...

    JSF UI 组件详解

    ### JSF UI组件详解 #### 一、引言 JavaServer Faces (JSF) 是一个为简化企业级Java Web应用程序创建而设计的标准组件框架。它不仅提供了强大的模型-视图-控制器(MVC)架构,还引入了一系列标准UI组件,使得开发者...

    创建JSF自定义组件

    本教程将深入探讨如何在JSF环境中创建自定义组件。 ### 1. 自定义组件概述 在JSF中,组件是UI的基本构建块,可以是简单的HTML元素,如按钮或输入框,也可以是复杂的组件,如表格或下拉菜单。自定义组件允许开发者...

    jsf自定义组件的实现

    【JSF自定义组件实现详解】 在JavaServer Faces (JSF)框架中,自定义组件允许开发者根据项目需求创建具有特定功能的UI元素。本文将引导你逐步了解如何在JSF中实现一个自定义组件,从基础开始,一步步构建一个简单的...

    JSF2自定义组件编程系列 第五部分 源代码

    在JSF(JavaServer Faces)2.0中,自定义组件是实现个性化用户界面和功能扩展的关键技术。这个"JSF2自定义组件编程系列第五部分 源代码"着重讲解了如何将复合组件(Composite Component)打包到JAR文件中,并通过...

    JSF生命周期及组件开发

    ### JSF生命周期及组件开发详解 #### 一、JSF生命周期概述 JavaServer Faces (JSF) 是一种基于Java EE标准的服务器端组件框架,用于简化企业级Web应用程序的开发。JSF提供了一种声明式的组件化编程模型,使得...

    jsf实战附录,JSF标签,组件详细介绍

    在"JSF实战附录"中,我们将深入探讨JSF的核心组成部分——标签和组件。 一、JSF标签 JSF标签是用于构建用户界面的XML元素,它们简化了UI组件的创建和管理。这些标签通常与特定的JSF组件关联,例如`h:inputText`用于...

    JSF(动态操作组件的例子)

    这个"JSF(动态操作组件的例子)"项目是为开发者提供一个实践JSF动态操作组件的实例,帮助理解如何在JSF应用中创建、修改和删除组件。下面将详细介绍JSF的核心概念以及动态操作组件的相关知识点。 1. **JSF框架概述**...

    JSF自定义文件上传组件

    jsf官方实现默认是不支持multipart/form-data类型的表单的,为了使jsf能够解析multipart/form-data表单的数据,我参考了myfaces1.1的方式,然后按照commons-fileupload1.2重构了部分代码(myfaces1.1使用的是commons...

Global site tag (gtag.js) - Google Analytics