Galera eu aqui de novo pedindo um help. Estou estudando JSF 2.0 e estou tentando criar um layout com facelets. Vou explicar aqui o que estou tentando fazer para ver se alguem aí já conhece isso e pode me ajudar.
Tenho um layout assim: Topo da pagina, menu na lateral esquerda da pagina, e o conteúdo da pagina ao lado direito do menu. Ai criei as paginas abaixo usando facelets templates para gerar esse layout.
layout.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"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>
<ui:insert name="titulo"></ui:insert>
</title>
<h:outputStylesheet library="css" name="style.css" />
</h:head>
<h:body>
<div id="container">
<div id="topo">
<ui:insert name="topo"></ui:insert>
</div>
<div id="menu">
<ui:insert name="menu"></ui:insert>
</div>
<div id="conteudo">
<ui:insert name="conteudo"></ui:insert>
</div>
<div id="rodape">
<ui:insert name="rodape"></ui:insert>
</div>
</div>
</h:body>
</html>
home.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"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<ui:composition template="/templates/layout.xhtml">
<ui:define name="titulo">Treinamento JSF 2.0</ui:define>
<ui:define name="topo">
Topo da pagina
</ui:define>
<ui:define name="menu">
<h:link outcome="/pages/cadastro.jsf" value="Cadastro">
<f:ajax execute="@this" render="div-body"/>
</h:link>
</ui:define>
<ui:define name="conteudo">
<div id="div-body">
Conteudo da Pagina
</div>
</ui:define>
<ui:define name="rodape">
Copyright
</ui:define>
</ui:composition>
</html>
cadastro.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:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:body>
<h1>Pagina de Cadastros</h1>
</h:body>
</html>
Quero que quando eu clicar no link cadastro, a pagina cadastro.xhtml carregue na div
que esta no conteúdo do site. Isso para reutilização do layout. Tentei fazer isso com ajax mas como não conheço quase nada ainda em JSF, não obtive sucesso. Espero que tenha cido claro, e que alguem consiga me ajudar.