【问题标题】:b:navLink action is never invokedb:navLink 操作永远不会被调用
【发布时间】:2015-06-22 17:18:15
【问题描述】:

我目前正在使用 bootfaces 编写一个 webapp。在我的应用程序中,我有一个顶部导航栏,如下所示

        <b:navBar brand="Brand" brandHref="#" inverse="true">
            <b:navbarLinks>
                <b:navLink value="Home" href="#"></b:navLink>
                <b:navLink value="Link" href="#"></b:navLink>
                <b:navLink value="Link" href="#"></b:navLink>

                <b:dropMenu value="#{loginBean.username}">
                    <b:navLink value="Logout" action="#{loginBean.doLogout}"/>
                </b:dropMenu>
            </b:navbarLinks>
        </b:navBar>

注意 action="#{loginBean.doLogout}"

使用 primefaces,这没有问题,但是当我迁移到 bootfaces 时,doLogout 永远不会执行。我需要在 bootfaces 中使用其他绑定来执行此操作吗?

【问题讨论】:

    标签: jsf action navbar bootsfaces


    【解决方案1】:

    似乎new BootsFaces version 添加了一个新组件 (b:navCommandLink),因此它的行为类似于 commandLink。

    【讨论】:

    • 这看起来不错,但似乎 b:navCommandLink 不在 taglib 中,我还没有找到更新的 tag lib 用于 0.7.0
    • 我很确定 b:navCommandLink 在 taglib 中 - 我刚刚查了一下,它适用于我们的展示。但是,也许您发现了一个我没有注意到的错误。您是否介意准备一个小型 GitHub 项目(或上传一个压缩项目,或类似的东西)来重现错误并在 out bugtracker 上打开一个错误?谢谢!
    【解决方案2】:

    看来我需要执行以下操作

    <b:navLink value="Logout" href="#{loginBean.doLogout()}"/>
    

    【讨论】:

    • 在页面加载期间调用它对您来说不是问题吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 2013-10-12
    • 2012-03-27
    • 2013-08-29
    • 2013-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多