使用JSF中的<ig:Sidebar></ig:Sidebar>实现动态加载菜单,其中bar.getChildren().add(aSidebarGroup);是实现动态加载首节点,HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
aSidebarGroup.setText(boardName);
aSidebarGroup.setExpanded(true);
aSidebarGroup.setId(viewRoot.createUniqueId());实现加载该节点下的子节点,非常方便。
private Sidebar buildSideBar(Sidebar bar)
{
boolean isInitialised = bar.getAttributes().get("IS_INITIALISED")!=null;
if (!isInitialised) {
// Get a reference to the JSF Application,
// we need it to create value bindings later-on
Application application = FacesContext.getCurrentInstance().getApplication();
UIViewRoot viewRoot = FacesContext.getCurrentInstance().getViewRoot();
/* Create Infragistics SidebarGroup */
// Set the Sidebar's width and height
bar.getAttributes().put("style","width: 155px; height: 590px;");
// Create SidebarGroup
List list = this.getBoardNameForMenu();
for(int i = 0 ;i<list.size();i++)
{
Object[] row = (Object[])list.get(i);
//Object[] row = (Object[])list.listIterator().next();
String boardId = String.valueOf(row[0]);
String boardName = String.valueOf(row[1]);
String parentId = String.valueOf(row[2]);
HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
aSidebarGroup.setText(boardName);
aSidebarGroup.setExpanded(true);
aSidebarGroup.setId(viewRoot.createUniqueId());
// Add the newly created SidebarGroup to the Sidebar's children list
bar.getChildren().add(aSidebarGroup);
List ls = this.getBoardNameForMenuBar(Integer.parseInt(boardId));
if(ls.size() != 0)
{
for(int j=0;j<ls.size();j++)
{
Object[] row1 = (Object[])ls.get(j);
String boardid = String.valueOf(row1[0]);
String boardname = String.valueOf(row1[1]);
//HtmlSidebarGroup aSidebarGroup = (HtmlSidebarGroup) application.createComponent(HtmlSidebarGroup.COMPONENT_TYPE);
HtmlLink aLink1 = (HtmlLink)application.createComponent(HtmlLink.COMPONENT_TYPE);
aLink1.setId(viewRoot.createUniqueId());
//aSidebarGroup.setText(sidebarGroupNameStr);
//aSidebarGroup.setExpanded(true);
//aSidebarGroup.setId(viewRoot.createUniqueId());
//aLink1.setId(parentId);
aLink1.setUrl("/pages/bbs/visitor/topic/topicforboard.jsf?boardid="+boardid+"");
aLink1.setValue(boardname);
aSidebarGroup.getChildren().add(aLink1);
}
}
}
分享到:
相关推荐
这些库提供了许多高级组件,如图表、日期选择器、树形结构等,极大地扩展了JSF的功能。 ### 使用JSF控件的注意事项 1. **数据绑定**:JSF控件通常与后台bean的属性进行双向数据绑定,确保UI状态与模型同步。 2. **...
jsf 控件速查手册,html格式。jsf标签使用培训教程。新手速查教程!
在JavaScript Server Faces (JSF) 中,控件是构建用户界面的关键组成部分,它们允许开发者创建交互式的Web应用程序。本文将深入探讨JSF中的一些常见控件及其使用方法,旨在帮助开发者更好地理解和应用这些控件。 1....
JavaServer Faces(JSF)是一种基于Java的Web应用程序开发框架,专门用于构建用户界面。...通过利用JSF提供的控件和标记库,开发者可以更高效地构建交互式、动态的用户界面,同时享受到Java的强大后端支持。
- **后台生成**:在JSF Managed Bean中,可以使用Java代码动态创建UIComponent实例,并设置其属性,然后添加到组件树中。 - **EL表达式**:使用Expression Language (EL)动态生成JSF标签,例如通过循环结构创建一...
JSF日历控件可以与其他组件协同工作,如命令按钮、数据表等,以实现更复杂的业务逻辑。例如,用户可以选择一个日期,然后点击按钮触发一个动作,该动作可能会根据所选日期执行数据库查询或其他业务操作。 总结,JSF...
### JSF控件详细参考手册 #### 概述 本文档旨在为BIMP平台开发者提供一个全面且深入的JSF Facelets标签集参考指南。通过详细介绍这些标签的用途与用法,帮助开发者更好地掌握和利用这些工具来提高Web应用的质量与...
JSF2.xdatatable分页控件与左侧菜单最简单应用 JSF2.x,功能强大,使用方便。全世界使用JSF的人越来越多。而且也有很多很好的控件给发出来了,如:richfaces、primefaces、myfaces等,就日前来讲primefaces功能...
JSF2.xdatatable分页控件与左侧菜单最简单应用 JSF2.x,功能强大,使用方便。全世界使用JSF的人越来越多。而且也有很多很好的控件给发出来了,如:richfaces、primefaces、myfaces等,就日前来讲primefaces功能...
JSF控件是这个框架的核心部分,它们是用户在网页上交互的对象,如按钮、输入框、下拉列表等。 本速查手册主要涵盖以下几个关键知识点: 1. **JSF组件库**:JSF提供了一个标准组件库,包括UIComponent、...
JSF(JavaServer Faces)是Java平台上用于构建Web应用程序的一种技术框架,它提供了一种声明式的方法来创建用户界面,并且处理与后端数据模型的交互。在这个"jsf实现登录功能"的例子中,我们将探讨如何利用JSF来构建...
本文将深入探讨JSF分页控件的关键知识点,以及如何实现大容量数据的可查询分页。 首先,理解JSF(JavaServer Faces)框架的基础是必要的。JSF是一种用于构建Web应用程序的Java标准,它提供了一种模型-视图-控制器...
在JSF中,下拉菜单通常由`h:selectOneMenu`标签实现,它可以动态加载选项,这在数据绑定和用户交互中十分常见。这种组件可以结合Spring的数据服务和Hibernate的查询结果,为用户提供动态、数据驱动的选择项。 ...
在本项目中,我们主要探讨的是如何利用JavaServer Faces (JSF) 框架实现分页功能,并结合MySQL数据库和SQL语句进行数据管理。JSF是一种用于构建Web应用程序的MVC(Model-View-Controller)框架,它提供了一种组件化...
**JSF标准的两个实现** JavaServer Faces (JSF) 是Java平台上的一个用于构建用户界面的MVC(Model-View-Controller)框架,它为Web...在实际使用时,需要解压这些文件,并根据项目配置将对应的JSF实现添加到类路径中。
JavaServer Faces(JSF)是Java平台上用于构建用户界面的Web应用程序框架,它提供了一种组件化、事件驱动的方式来创建动态、交互式的Web应用。Sun Microsystems(后来被Oracle收购)是JSF规范的主要推动者和实现者。...
这些组件库提供了丰富的UI组件,包括树形组件,可以方便地在JSF页面上展示数据。 首先,我们来看“JSF树”的概念。JSF树组件允许用户通过节点展开和折叠来探索层级结构的数据。每个节点可以包含子节点,形成一个可...
3. **Ajax框架的集成**:为了更好地利用Ajax,开发者可能会选择集成如RichFaces、IceFaces等第三方JSF扩展框架,这些框架提供了丰富的Ajax组件,可以轻松地在JSF应用中添加动态效果。 4. **性能优化**:在实现过程...
在这个"JSF实现的CRUD例子 myeclipse"中,我们将探讨如何使用JSF和MyEclipse开发一个简单的CRUD(Create, Read, Update, Delete)应用,而无需连接到数据库。 首先,"first-java-server-faces-tutorial-en.pdf"可能...