Facelet composition Tag

This is a templating tag and is used for the wrapping
the content that can be included in any other facelet. This tag provides some
useful features. Any content outside of this tag is left to be rendered. You can
include normal html content in your page but Facelet will render only
content that is within this tag i.e. composition tag. This tag takes one
attribute named "template". This attribute is set to the path
of the template where the content of this tag will be included.
Code Description :
composition.xhtml : In the code below we have taken template attribute which
indicates the template to which the content inside this composition tag will be
rendered. Here we have written some content outside of the composition tag, that
content will not be rendered. In the comptemplate.xhtml we have used insert
tag to include the content inside the composition tag to the comptemplate.xhtml
page.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<body>
Content above composition tag will
not be rendered.
<ui:composition template="/pages/composition/comptemplate.xhtml">
<h2>This is the content to be included in the comptemplate.xhtml page.</h2>
</ui:composition>
Content below composition tag will
not be rendered.
</body>
</html>
|
comptemplate.xhtml :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets">
<head>
<title>facelet example </title>
<link href="../../style/CSS.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<ui:insert />
</body>
</html> |
Rendered Output :

Html Source Code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>facelet example </title>
<link href="../../style/CSS.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>This is the content to be included in the comptemplate.xhtml page.</h2>
</body>
</html> |
This tag contains only one attribute :
template : This attribute is set to the template
where the content inside this tag will be included.

|
Current Comments
0 comments so far (post your own) View All Comments Latest 10 Comments: