Навигация по страницам с помощью JSF - PullRequest
1 голос
/ 09 февраля 2011

Возможно, это простой вопрос, но я не знаю его ответа.

У меня есть проект, myProject. В webContent у меня есть файлы home.xhtml, left.html и у меня есть 2 другие папки: кошки и собаки. В директории о кошках у меня есть страница cat.xhtml, а в каталоге собак у меня есть страница 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 возвращает строку "оставить"

<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>

Но это не работает. Я также пытался использовать <to-view-id>../leave.html</to-view-id> или добавьте новую папку оставьте и вставьте туда страницу Leave.html. Я использовал <to-view-id>/leave/leave.html</to-view-id> или <to-view-id>/../leave.html</to-view-id>

но все имеют одинаковый результат HTTP Status 404 /myProject/cats/leave.htlm Тип Отчет о состоянии

сообщение /myProject/cats/leave.htlm

description Запрошенный ресурс (/myProject/cats/leave.htlm) недоступно.

1 Ответ

3 голосов
/ 09 февраля 2011

Ваша навигация не работает, потому что страница всегда будет оставлять ".html". h: outpuLink использует свойство value для навигации. Я предлагаю вам использовать h: commandLink и использовать свойство value для отображения ссылки (Leave) и свойство action для строки from-result.

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