Jsf p:具有动态和非动态子菜单的菜单栏

Jsf p:具有动态和非动态子菜单的菜单栏,jsf,primefaces,menubar,Jsf,Primefaces,Menubar,我目前正在尝试创建一个p:menubar,它有一个动态创建的子菜单,但所有其他子菜单通常都应该在xhtml中声明。遗憾的是,我找不到任何关于如何这样做的信息,因为您似乎总是必须创建一个MenuModel,并将其用作完整p:menubar的模型 当只使用两个单独的菜单栏时,可能同时打开多个子菜单,这会导致它们重叠。而且间距也不对 编辑:我不能使用JSTL,因此使用c:forEach的解决方案是不可能的。 它必须是动态的,因为每个请求都从数据库加载项 编辑2:我可以使用JSTL,但我仍然不能真正理解

我目前正在尝试创建一个
p:menubar
,它有一个动态创建的子菜单,但所有其他子菜单通常都应该在xhtml中声明。遗憾的是,我找不到任何关于如何这样做的信息,因为您似乎总是必须创建一个
MenuModel
,并将其用作完整
p:menubar
的模型

当只使用两个单独的菜单栏时,可能同时打开多个子菜单,这会导致它们重叠。而且间距也不对

编辑:我不能使用JSTL,因此使用
c:forEach
的解决方案是不可能的。 它必须是动态的,因为每个请求都从数据库加载项

编辑2:我可以使用JSTL,但我仍然不能真正理解如何最好地实现这一点。我不希望有一个菜单栏,其中一些子菜单是普通的静态子菜单,但是代码中动态地构建了一个子菜单(对于每个请求,没有ajax)。然而,这个动态子菜单有多个子菜单,这些子菜单依次有自己的子菜单,所以理论上我必须递归地遍历所有子菜单


我使用的是Primefaces 8.0和JSF 2.2

谢谢你回答我的问题,我现在使用的是
c:forEach
,就像在帖子中一样。

嗨,一些评论:1:PF版本缺失(添加JSF版本和impl也很好)。“动态”是如何动态的?那么它必须改变吗?这回答了你的问题吗@Kukeltje没有,因为我不能用c:forEach。我目前没有这里的代码,因此无法检查PF版本,我将在有问题时更新我的问题(可能不会在周五之前)。您不能使用
c:forEach
?只有当您还需要使用ajax更新菜单时,才可以这样做。否则就没有理由了。这是一个非常基本的问题,应该添加到问题中。非常感谢,我现在肯定要阅读JSTL。如果它是重复的,无需创建答案,只需将评论(或投票,如果可以)作为重复或向上投票重复的评论。。干杯