Ich habe Probleme einschließlich einer Facelet-Vorlage. Ich wollte einige Inhalte aufteilen, damit ich sie woanders wiederverwenden kann.Problem bei der Verwendung in Facelets
Also änderte ich diesen Code:
<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
template="/layout/template.xhtml">
<ui:define name="head">
<title>Title</title>
</ui:define>
<ui:define name="header">
<h3>Header</h3>
</ui:define>
<ui:define name="content">
<table><tr><td>table</td></tr></table>
</ui:define>
</ui:composition>
Um dies:
<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
template="/layout/template.xhtml">
<ui:define name="head">
<title>Title</title>
</ui:define>
<ui:include src="/admin/admin_generic.xhtml"/>
</ui:composition>
Und innerhalb admin-generic.xhtml
ich den Code in einer ui eingewickelt: Zusammensetzung.
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<ui:define name="header">
<h3>Header</h3>
</ui:define>
<ui:define name="content">
<table><tr><td>table</td></tr></table>
</ui:define>
</ui:composition>
Aber nichts wird angezeigt. Ich bekomme nur eine leere Seite, ohne Fehler. Ist es falsch, ui:composition
zu verwenden? Ich habe es mit ui:component
versucht, aber das hat auch nicht geholfen.
aktualisieren: Nach meinem Facelets Essentials-Guide, heißt es:
Der
ui:include
-Tag verwendet werden kann, um weitere Facelets in Ihre Dokument-Datei enthalten. Es enthält einfach die von Ihnen angegebene Quelldatei. Sie können schließen jede Facelets-Datei, dieui:component
oderui:composition
Tags (die den Inhalt außerhalb ihrer selbst trimmen) oder einfach ein Fragment von XHTML oder XML hat.
Geht das? Ist der Inhalt außerhalb des Include entfernt? Wie kann ich die Seite einfach einfügen, ohne dass der Inhalt außerhalb getrimmt wird?
Danke für die Klarstellung –
Gern geschehen. In der Zukunft versuchen, irrelevante Geräusche in der Frage zu minimieren, so dass andere es früher beantworten werden :) – BalusC
Ja, guter Tipp. Wird besorgt –