Java 是否有任何JSF组件用于实现面包屑导航?

Java 是否有任何JSF组件用于实现面包屑导航?,java,jsf,navigation,breadcrumbs,Java,Jsf,Navigation,Breadcrumbs,据我所知,面包屑有两种 静态/层次结构之一 工作起来像一堆 当用户“深入”网站时,会推送条目 当用户进入该站点时,将弹出条目 对于所有用户(对于给定页面)都是相同的 显示位置而不是历史 一个简单的例子是HOME->BIG CATEGORY->SMALL CATEGORY->ARTICLE 动态的/历史的 像队列一样工作 当用户转到另一个页面时,条目在末尾被推送 当达到最大尺寸时,条目将从前面移除 对于每个用户都是不同的,因为它是个性化的 显示时间线/历史记录,而不是位置 一个简单的例子是

据我所知,面包屑有两种

静态/层次结构之一

  • 工作起来像一堆
  • 当用户“深入”网站时,会推送条目
  • 当用户进入该站点时,将弹出条目
  • 对于所有用户(对于给定页面)都是相同的
  • 显示位置而不是历史
一个简单的例子是HOME->BIG CATEGORY->SMALL CATEGORY->ARTICLE

动态的/历史的

  • 像队列一样工作
  • 当用户转到另一个页面时,条目在末尾被推送
  • 当达到最大尺寸时,条目将从前面移除
  • 对于每个用户都是不同的,因为它是个性化的
  • 显示时间线/历史记录,而不是位置
一个简单的例子是小类别->主页->大类别->主页

问题是:


这些类型的导航是否有现成的JSF组件

参见primefaces,有很多组件,您也可以找到面包屑
我也有同样的问题!但我觉得解决方案将是@BalusC提到的

现在,我只使用面包屑获取当前视图路径

 <h:form id="breadcrumb">
                        <p:breadCrumb>
                            <p:menuitem value="#{bundle.Index}" action="/index?faces-redirect=true" immediate="true"/>
                            <p:menuitem value="#{view.viewId.substring(0, view.viewId.length()-6)}" url="#{view.viewId.substring(0, view.viewId.length()-6)}.jsf" ajax="false"/>

                        </p:breadCrumb>
                    </h:form>

我正在使用.jsf作为FacesURL模式,由于viewid=/*.xhtml**,我不得不对其进行子串,删除.xhtml子串并添加.jsf字符串

因此,我们需要一个支持bean来完成获取viewid(path)并将其放入有序列表的工作。
还可以使用
javascript:history.back()
和history.forward()

很好,但这只是演示部分。我对利用JSF的后端部分感兴趣。我可以很容易地用jQuery/CSS为用户创建一个有吸引力的面包屑。@kazanaki:你在反驳你自己的问题。您需要一个JSF组件。但你显然更感兴趣的是如何自己实现一个。嗯,这是开源的。看一看。特立尼达也有一个顺便说一句。@BalusC:我明白你的意思,也许我的问题不清楚。假设我选择了primeface组件。然后,除非我弄错了,否则我仍然需要手动创建primefaces只渲染的服务器端数据结构。我希望有一些东西可以插入FACEScontext并自动跟踪页面重定向。否则,除了在这个数据结构上使用一个简单的迭代器和h:outputtext,我还能从primefaces中获得什么呢?我不想自己实施任何事情。代码越少越好。但是我用primefaces组件填充了它,我并没有真正得到任何东西。你基本上想要一个第三方过滤器或phaselistener,它可以将当前URL或viewid添加到会话范围的某个列表中?@BalusC是的,类似的东西会很棒!