如何在jsf2中动态呈现面板菜单项(richfaces)

用户名

我是JSF 2.0的新手,并尝试将面板菜单项动态呈现到我的xhtml页面中。例如 :

Header_1
 |---SubHeader_1
 |     |----Item_1.1
 |     |----Item_1.2
 |     |----Item_1.3
 |---SubHeader_2
 |     |----Item_2.1
 |     |----Item_2.2

我想加载Item_1.xItem_2.x动态地在我home.xhtml的数据库。请提供您宝贵的建议,我该怎么做。

开发者

您可以尝试以下代码:希望这对您有帮助-

菜单项的数据由MenuItem类表示

public class MenuItem {
    private int id;
    private String label;

    public MenuItem(String label, int id) {
       super();
       this.label = label;
       this.id = id;
    }

    public int getId() {
       return this.id;
    }

    public String getLabel() {
       return this.label;
    }

    public void setId(int id) {
       this.id = id;
    }

    public void setLabel(String label) {
       this.label = label;
    }

    @Override
    public String toString() {
        StringBuilder builder = new StringBuilder();
        builder.append("MenuItem [id=");
        builder.append(this.id);
        builder.append(", label=");
        builder.append(this.label);
        builder.append("]");
        return builder.toString();
    }
 }

DynamicMenu类支持动态菜单。它提供了菜单项列表和一种操作方法:

import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
import org.jboss.seam.annotations.Name;

@Name("dynMenu")
public class DynamicMenu {

    private Logger log = Logger.getLogger(DynamicMenu.class.getName());

    public void action(int id) {
        log.info("Action called with menu item id: " + id);
    }

    public List<menuitem> getMenuItems() {

        List<menuitem> menuItems = new ArrayList<menuitem>();

        menuItems.add(new MenuItem("Menu Item #1", 1));
        menuItems.add(new MenuItem("Menu Item #2", 2));
        menuItems.add(new MenuItem("Menu Item #3", 3));

        return menuItems;
    }
}

以下代码段包含动态菜单xhtml示例。动态菜单项中的键是<c:forEach>迭代器。名称空间声明非常重要,应该为xmlns:c="http://java.sun.com/jstl/core"如果使用xmlns:c="http://java.sun.com/jsp/jstl/core"名称空间,则迭代器将无法工作!

<h:form xmlns:h="http://java.sun.com/jsf/html">
    <rich:dropDownMenu value="Dynamic Menu Item Example" style="text-decoration:none;">
        <c:forEach xmlns:c="http://java.sun.com/jstl/core" var="item" 
                                        items="#{dynMenu.getMenuItems()}">

            <rich:menuItem id="menuItem#{item.id}" submitMode="ajax"
                    value="#{item.label}" action="#{dynMenu.action(item.id)}">
            </rich:menuItem>
        </c:forEach>
    </rich:dropDownMenu>
</h:form>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在jsf2中动态呈现面板菜单项(richfaces)

来自分类Dev

如何在Android中动态添加菜单项

来自分类Dev

如何在Vue中动态更改菜单项名称

来自分类Dev

如何在devtools>网络面板中添加上下文菜单项?

来自分类Dev

如何在devtools>网络面板中添加上下文菜单项?

来自分类Dev

如何在菜单项管理面板Magento中添加一些内容

来自分类Dev

如何在折叠的菜单项中呈现输入窗口小部件?

来自分类Dev

CodeIgniter-如何在局部视图页面中为菜单动态选择菜单项?

来自分类Dev

Jsf2:如何在主菜单中向菜单模型添加子菜单?

来自分类Dev

如何在系统菜单中添加菜单项

来自分类Dev

如何在系统菜单中添加菜单项

来自分类Dev

如何在CMFCMenuBar中右对齐“帮助”菜单项

来自分类Dev

如何在导航栏中居中显示菜单项

来自分类Dev

如何在NavigationView的菜单项中设置ellipsize?

来自分类Dev

如何在GRUB中还原Windows XP菜单项?

来自分类Dev

如何在Qt中包括菜单项的工具提示

来自分类Dev

如何在GRUB中还原Windows XP菜单项?

来自分类Dev

如何在Action Overflow中不显示菜单项?

来自分类Dev

如何在odoo中查找菜单项的动作ID?

来自分类Dev

如何在 Android 菜单项行中插入布局?

来自分类Dev

如何在 AWT Menu 中定义菜单项的顺序?

来自分类Dev

rshinydashboard动态子菜单项未呈现

来自分类Dev

rshinydashboard动态子菜单项未呈现

来自分类Dev

菜单项未在Android Emulator中呈现

来自分类Dev

如何对齐菜单项中的箭头?

来自分类Dev

如何在jsf2中添加请求参数?

来自分类Dev

动态隐藏菜单项

来自分类Dev

动态更改菜单项

来自分类Dev

如何在子菜单项显示后立即将子项动态添加到TMenuItem

Related 相关文章

热门标签

归档