Я создал шаблон (template.xhtml), который находится в корневом контексте приложения.Я хотел применить его к странице (newTemplateClient.xhtml), которая находится в папке «public».Поэтому newTemplateClient.xhtml выглядит следующим образом:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns="http://www.w3.org/1999/xhtml"
template="./../template.xhtml">
.
.
.
У меня есть ссылки на эту страницу в index.xhtml:
<h:link outcome="/public/newTemplateClient" value="Login"/>
<h:commandLink action="/public/newTemplateClient?faces-redirect=true" value="Login"/>
<h:commandLink action="/public/newTemplateClient" value="Login"/>
И только последние работы.Когда я использую первые две страницы отображается, но шаблон не применяется.Так что работает только тогда, когда страница перенаправлена, а не перенаправлена.Почему?
Заранее спасибо
Хорошо, кажется, что шаблон применяется, а файлы css - нет.Я использую мастера NetBeans для создания шаблонов и шаблонов клиентов.Файлы css находятся в каталоге / resources / css /.На них ссылаются из template.xhtml:
`
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="./resources/css/default.css" rel="stylesheet" type="text/css" />
<link href="./resources/css/cssLayout.css" rel="stylesheet" type="text/css" />
<title><ui:insert name="title">template</ui:insert></title>
</h:head>
<h:body>
<div id="top">
<ui:insert name="top">Top</ui:insert>
</div>
<div id="content" class="center_content">
<ui:insert name="content">Content</ui:insert>
</div>
<div id="bottom">
<ui:insert name="bottom">Bottom</ui:insert>
</div>
</h:body>
`
Как я могу ссылаться на эти CSS-файлы другим способом?Структура папок:
Root
public
newClientTemplate.xhtml
template.xhtml
index.xhtml