JSF: problemas ao criar paginas

Fala pessoal!
Tudo belezA? Espero que sim!
me passaram a missão de fazer umas paginas utilizando xhtml!

to utilizando o eclipse pra desenvolver JSF.

a ideia eh que o cliente observe a pagina, e selecione um checkbox, e assim que ele selecionar o checkbox, vai pra uma outra página.

fiz um código assim:


<!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:a4j="http://richfaces.org/a4j"
	xmlns:rich="http://richfaces.org/rich"
	xmlns:f="http://java.sun.com/jsf/core">

<!-- 
		Replace path to template, title, header and body
		with actual data.
	 -->

<ui:define name="body">
	<h:panelGrid columns="2">
		<h:panelGrid columns="1">
			<rich:panel>
				<f:facet name="header">
					Tabela Fonte de Dados
				</f:facet>
				<h:panelGrid columns="2" style=" width : 528px; height : 170px;">
					<rich:scrollableDataTable
						value="#{FonteController.getFonteDadoDataModel}" var="FonteDado"
						columnClasses="col" id="muni" height="125" width="516"
						sortMode="single">
						<rich:column>
							<f:facet name="header">
								<h:outputText value="Fonte" />
							</f:facet>
						<h:outputText value="#{FonteDadoSec.getIdFonteDado}" /> 
						</rich:column>

						<rich:column>
							<f:facet name="header">
								<h:outputText value="Nome Fonte" />
							</f:facet>
						<h:outputText value="#{FonteDadoSec.getNmFonteDado}" /> 
						</rich:column>
						<rich:column>
							<f:facet name="header">
								<h:outputText value="Selecionar" />
							</f:facet>
						<h:selectBooleanCheckbox value="/pages/interfaces.jsf">
								<a4j:support event="onclick" reRender="interfaces" />
							</h:selectBooleanCheckbox> 
						</rich:column> 
					</rich:scrollableDataTable>
				</h:panelGrid>
			</rich:panel>
		</h:panelGrid>
	</h:panelGrid>
</ui:define>
</html>

o código compila, mas nao aparece as columns que eu defini!
alguem tem uma ideia ?

obrigado!

# <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:a4j="http://richfaces.org/a4j"  
#     xmlns:rich="http://richfaces.org/rich"  
#     xmlns:f="http://java.sun.com/jsf/core">  

Faltou definir qual template voce esta usando
template="./…/layout/layout.xhtml">

Então cara, você fez o template.xhtml? (ou seja la o nome que deu a ele).
Nele deve ter definido os seus inserts e tals, ai nas suas páginas que segirão esse template você coloca da seguinte forma: (usarei o se exemplo, repare na diferença em negrito)

[b]<ui:composition template="./template.xhtml">[/b] <-- aqui você indica o seu template
 <ui:define name="body">       <-- aqui você "sobrescreve" os inserts do template
     <h:panelGrid columns="2">  
         <h:panelGrid columns="1">  
             <rich:panel>  
                 <f:facet name="header">  
                     Tabela Fonte de Dados  
                 </f:facet>  
                 <h:panelGrid columns="2" style=" width : 528px; height : 170px;">  
                     <rich:scrollableDataTable  
                         value="#{FonteController.getFonteDadoDataModel}" var="FonteDado"  
                         columnClasses="col" id="muni" height="125" width="516"  
                         sortMode="single">  
                         <rich:column>  
                             <f:facet name="header">  
                                 <h:outputText value="Fonte" />  
                             </f:facet>  
                         <h:outputText value="#{FonteDadoSec.getIdFonteDado}" />   
                         </rich:column>  
   
                         <rich:column>  
                             <f:facet name="header">  
                                 <h:outputText value="Nome Fonte" />  
                             </f:facet>  
                         <h:outputText value="#{FonteDadoSec.getNmFonteDado}" />   
                         </rich:column>  
                         <rich:column>  
                             <f:facet name="header">  
                                 <h:outputText value="Selecionar" />  
                             </f:facet>  
                         <h:selectBooleanCheckbox value="/pages/interfaces.jsf">  
                                 <a4j:support event="onclick" reRender="interfaces" />  
                             </h:selectBooleanCheckbox>   
                         </rich:column>   
                     </rich:scrollableDataTable>  
                 </h:panelGrid>  
             </rich:panel>  
         </h:panelGrid>  
     </h:panelGrid>  
 </ui:define>  
[b]</ui:composition>[/b]

Qualquer dúvida poste ai, mas pesquise mais sobre facelets.
Abraços!

Ops, parece que bold não funciona na tag code :lol:
Sry!
Mas preste atenção na tag ui:composition

Abraços!

era isso mesmo :smiley:
mas perguntando uma outra coisa:
como que eu faço pra deixar o checkbox Desmarcado por padrão?
Como posso adicionar um evento nele ?

obrigado pela ajuda!!

Cara, se você quiser adicionar eventos ajax nele pesquise pelo a4j:support
Pelo que vejo você usa richfaces, que já tem Ajax 4 JSF incluído(a4j).

Não me lembro de cabeça, mas se não me engano o checkbox tem a propriedade checked.
Você ainda tem mais algumas alternativas pra deixa-lo setado por padrão, seja setando na propriedade value um booleano no se ManagedBean, setado pelo construtor em false ou dando um binding no componente (não recomendo essa última, a menos que seja estritamente necessário).

Abraços!

edit: correção ortográfica