Не совсем так, но все компоненты JSF, которые ссылаются на ресурс URL, уже автоматически включают правильный контекстный путь и, в конечном итоге, также отображение FacesServlet
.Например, <h:link>
:
<h:link value="Link to other page" outcome="otherpage" />
, который отображает что-то вроде (при условии, что ваш контекстный путь равен /contextname
, а ваш FacesServlet
сопоставлен с *.xhtml
):
<a href="/contextname/otherpage.xhtml">Link to other page</a>
Вы можете включить параметры запроса с помощью <f:param>
:
<h:link value="Link to other page" outcome="otherpage">
<f:param name="foo" value="#{bean.foo}" />
</h:link>
, что будет выглядеть примерно так:
<a href="/contextname/otherpage.xhtml?foo=bar">Link to other page</a>
Другие компоненты ссылкиэто также <h:outputStylesheet>
, <h:outputScript>
и <h:graphicImage>
для CSS, JS и изображений соответственно:
<h:outputStylesheet library="default" name="css/foo.css" />
<h:outputScript library="default" name="js/foo.js" />
<h:graphicImage library="default" name="images/foo.png" />
, который отображает что-то вроде:
<link rel="stylesheet" type="text/css" href="/contextname/javax.faces.resource/css/foo.css.xhtml?ln=default" />
<script type="text/javascript" src="/contextname/javax.faces.resource/js/foo.js.xhtml?ln=default"></script>
<img src="/contextname/javax.faces.resource/images/foo.png.xhtml?ln=default" />