【问题标题】:Page navigation with JSF使用 JSF 进行页面导航
【发布时间】:2011-02-09 08:22:08
【问题描述】:

可能这是一个简单的问题,但我不知道它的答案。

我有一个项目,myProject。在 webContent 中,我有 home.xhtml、leave.html 文件和另外 2 个文件夹:猫和狗。在cats 目录中我有一个页面cat.xhtml,在目录dogs 我有一个页面dogs.xhtml。

我想从每个页面(家、猫、狗)转到页面 leave.html 在每个文件中都有一个commandLink

<h:form>
    <h:outputLink value="leave.html" action="#{myBean.leave}">
        <f:verbatim>Leave</f:verbatim>
    </h:outputLink>
</h:form>

myBean 在方法leave 中返回一个字符串“leave”

<navigation-rule>
    <from-view-id>*</from-view-id>
    <navigation-case>
        <from-outcome>leave</from-outcome>
        <to-view-id>/leave.html</to-view-id>
    </navigation-case>
</navigation-rule>

但这不起作用。 我也尝试过使用&lt;to-view-id&gt;../leave.html&lt;/to-view-id&gt; 或添加一个新文件夹 leave 并放入 leave.html 页面。 我用&lt;to-view-id&gt;/leave/leave.html&lt;/to-view-id&gt;&lt;to-view-id&gt;/../leave.html&lt;/to-view-id&gt;

但都具有相同的结果 HTTP 状态 404 /myProject/cats/leave.htlm 输入状态报告

消息/myProject/cats/leave.htlm

description 请求的资源 (/myProject/cats/leave.htlm) 是 不可用。

【问题讨论】:

  • 如果您需要添加更多信息,请更新您的问题。

标签: jsf navigation faces-config


【解决方案1】:

您的导航无法正常工作,因为页面总是会转到“leave.html”。 h:outpuLink 使用 value 属性进行导航。 我建议您使用 h:commandLink 并使用 value 属性作为显示链接(离开)和 action 属性作为 from-outcome 字符串。

<h:commandLink value="Leave" action="#{myBean.leave}"> 

【讨论】:

    猜你喜欢
    • 2011-11-03
    • 2011-07-21
    • 1970-01-01
    • 1970-01-01
    • 2015-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多