p:menubar 具有动态和非动态子菜单

p:menubar with both dynamic and non-dynamic submenus

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

的模型

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

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

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

我正在使用 Primefaces 8.0 和 JSF 2.2

谢谢Kukeltje for answering my questions, I now ended up using c:forEach like in the post.