Valter Silva
Valter Silva

Reputation: 16656

How include page in JSF?

i'm new in jsf, i would like to know how i can reuse others .jsf pages without 'copy paste' them.

In .jsp i do:

// head.jsp 
<head> ... </head>

// top.jsp
<body> ... </body>

Then i include them in my new .jsp
// index.jsp
<%@include file="head.jsp" %>
<%@include file="top.jsp" %>
...

How can i do this with jsf ? i'm trying this way:

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:head>
        <ui:include src="components/head.xhtml" />
    </h:head>
    <h:body>
        <ui:include src="components/top.xhtml" />
    </h:body>
</html>

But is not working..

Any idea ?

Best regards, Valter Henrique.

Upvotes: 0

Views: 1761

Answers (2)

mrembisz
mrembisz

Reputation: 12880

Facelets is the default view technology for JSF2, so I would use its <ui:include> tag here. Make sure your paths are correct - they should start with webapp root, one containing WEB-INF - and also make sure the included facelets contain <ui:composition> tag around the included content. Anything outside this tag will be ignored.

Upvotes: 2

Dobes Vandermeer
Dobes Vandermeer

Reputation: 8820

Try looking for the "import" tag in the core library.

I think ui:include might be for facelets rather than plain jsf.

Upvotes: -1

Related Questions