Проблема с использованием ссылки h: для перехода на страницу с суффиксом не по умолчанию - PullRequest
3 голосов
/ 29 декабря 2011

У меня запущено приложение JSF 2 на glassfish, и я только что установил caucho Реализация PHP quercus. С небольшой настройкой я могу успешно служить .php файлы с сервера:

<servlet>
        <servlet-name>Quercus Servlet</servlet-name>
        <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Quercus Servlet</servlet-name>
        <url-pattern>*.php</url-pattern>
</servlet-mapping>

Что я не могу сделать, так это использовать h: link для перехода на страницу, которая не использует суффикс по умолчанию (.xhtml). Поэтому, когда у меня есть:

<h:link outcome="/hello.php"/>

Я просто получаю ПРЕДУПРЕЖДЕНИЕ: JSF1090: Случай навигации не разрешен для компонента j_idt48 в журнале сервера (когда страница загружена), и никакие сложности с ведением /, кажется, не помогают. Есть ли способ заставить h: link работать таким образом, или я должен просто использовать h: outputLink?

Спасибо.

1 Ответ

4 голосов
/ 29 декабря 2011

<h:link> только для случаев навигации JSF и, следовательно, действительно не может использоваться для перехода к другим видам ресурсов, даже если они обслуживаются сервлетами в одном приложении (например, * .php в этом случае).

Как вы уже предлагали, просто используйте <h:outputLink>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...