Duvida com facelets tag <ui:insert> e <ui:define>

6 respostas
N

boa tarde…
estou tentando gerar um layout de uma página mas não surte efeito…
alguém pode me ajudar, por favor?
meu layout está assim:
página modelo.html

<!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="consultarcodigo.jsp">
		<ui:define name="header">
		    <head>
				<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
				<title>Sistema HRWMS</title>
			</head>
		</ui:define>
		<ui:define name="content">
		    Add your content here or delete to use the default
		</ui:define>
		<ui:define name="footer">
		    Add your footer here or delete to use the default
		</ui:define>
	</ui:composition>
</html>

e a página jsp é cadastroproduto.jsp

<?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>

<!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">
	<f:subview id="header">
		<ui:insert name="header"></ui:insert>
	</f:subview>
<body>
<f:view>
	<h:form>
		<h:commandButton value="Entrar"></h:commandButton>
	</h:form>
</f:view>
</body>
</html>

o que está errado?
e mais uma coisa posso usar <h:body> no lugar de ?
obrigado

6 Respostas

A

Aconselho vc ler e fazer por esse tutorial:
http://my.opera.com/medoinho/blog/utilizando-templates-facelets

Usa-se templates do facelets em páginas .xhtml

N

bom dia andii.brunetta

depois de tanto apanhar começei a pensar exatamente o que acaba de me confirmar…
sendo assim, se eu quizer algo parecido com isso em páginas jsp eu deveria usar as tags
<f:subview></f:subview>
com a tag jsp:include</jsp:include> ?

e vc sabe se perco desempenho com páginas include?

dei uma olhada nos tutorias e parecem ser o que eu estava precisando…
muito obrigado…
vou estudar por ele…
bom dia

A

Olha… quanto a perder desempenho nas páginas jsp por causa das tags jsp:include … eu acredito que isso não aconteça, não teria porque acontecer… não sei te dizer certo, pq só sei o básico do básico do JSP

N

muito obrigado andii.brunetta
sucesso…

A

Se precisar, estamos aí! :smiley:

N

Andi bom dia,
eu ja tinha feito com ui:component e depois ui:include ui:insert … criei uma pagina component só com CSS e inclui na pagina desejada , mas quando eu clico no meu botão não é executado nenhum ação!

Criado 7 de janeiro de 2011
Ultima resposta 22 de jun. de 2011
Respostas 6
Participantes 3