[RESOLVIDO] Jsf + Primefaces - Construção de formulário

Bom dia pessoal,

Estou iniciando na tecnologia JSF 2.0 + Primefaces. No entanto estou com um problema que sei que é básico, mas ainda não consegui encontrar a solução.

Já percebi que a maneira de se compor o formulário é muito importante pra que este funcione corretamente, e estou criando um facelet para padronizar os cadastros, mas não estou tendo sucesso, a idéia é:

Um p:tabView com duas p:tab:

1 - dataGrid com os dados, e os botões de novo, alterar, excluir e pesquisa.

2 - inputs dos campos e os botoes salvar, limpar e cancelar.

tudo isto em um template, que depois faço o ui:composition e preencho os “detalhes” de cada cadastro.

visualmente, tudo funcionando, no entanto, embora eu consiga acessar os atributos da minha classe bean (que por sinal eu passo via ui:param), eu não consigo acessar os métodos, e em meus testes, já percebi que o problema é em relação a minha montagem do formulário, onde colocar os h:form, essas coisas…

Poderiam me dar uma forcinha? Já pesquisei muito mas, é bastante específico e não consegui encontrar nada. Segue o código:

Template:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!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"
	xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>

<h:body width="100%" height="100%">

	<p:panel id="panelGeral">

		<p:growl id="msg" showDetail="true" />

		<p:tabView id="tabGeral"
			activeIndex="#{ ( bean.habilitaCadastro == false ? 0 : 1 ) }">

			<p:tab id="tabConsulta" title="Consulta"
				disabled="#{bean.habilitaCadastro}">

				<h:form id="formConsulta">

					<p:dataTable id="tableConsulta" var="regGrid" value="#{bean.lista}"
						paginator="true" rows="15"
						paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="5,10,15,20,25,30" selection="#{bean.objeto}"
						selectionMode="single" rowKey="#{campoPrincipal}">

						<ui:insert name="fieldsGrid" />

					</p:dataTable>

					<br></br>

					<h:panelGrid columns="5">

						<p:commandButton value="Novo" icon="ui-icon-lightbulb"
							actionListener="#{bean.novo}" />
						<p:commandButton value="Alterar" icon="ui-icon-pencil"
							actionListener="#{bean.alterar}" />

						<p:commandButton value="Excluir"
							onclick="return confirm('Tem certeza de que deseja excluir este registro?')"
							icon="ui-icon-trash" actionListener="#{bean.excluir}" />

						<h:outputLabel value="Pesquisar:" />
						<p:inputText name="textPesquisar" value="#{bean.textPesquisa}">
							<p:ajax event="keyup" listener="#{bean.pesquisar}" />
						</p:inputText>

					</h:panelGrid>

				</h:form>

			</p:tab>

			<p:tab title="Cadastro" id="tabCadastro"
				disabled="#{!bean.habilitaCadastro}">

				<h:form id="formCadastro">

					<ui:insert name="fieldsCadastro" />

					<h:panelGrid columns="3">
						<p:commandButton value="Salvar" icon="ui-icon-disk"
							actionListener="#{bean.limpar}" />
						<p:commandButton value="Limpar" icon="ui-icon-document"
							actionListener="#{bean.limpar}" />
						<p:commandButton value="Cancelar" icon="ui-icon-radio-off"
							actionListener="#{bean.limpar}" />
					</h:panelGrid>

				</h:form>

			</p:tab>

		</p:tabView>

	</p:panel>

</h:body>

</html>

Composition:

<ui:composition template="/templates/crudTemplate.xhtml"
	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"
	xmlns:p="http://primefaces.org/ui">

	<ui:param name="bean" value="#{cadUfBean}" />
	<ui:param name="campoPrincipal" value="nome" />

	<ui:define name="fieldsGrid">

		<p:column style="width:20%">
			<f:facet name="header"></f:facet>
			<h:outputLabel value="#{regGrid.cod_uf}" />
		</p:column>

		<p:column style="width:20%">
			<f:facet name="header"></f:facet>
			<h:outputLabel value="#{regGrid.nome}" />
		</p:column>

		<p:column style="width:20%">
			<f:facet name="header"></f:facet>
			<h:outputLabel value="#{regGrid.sigla}" />
		</p:column>

	</ui:define>

	<ui:define name="fieldsCadastro">
	
		<h:panelGrid columns="2">

			<h:outputLabel value="Cod. Uf:" />
			<h:inputText name="textCodUf" size="50" value="#{bean.objeto.cod_uf}" />

			<h:outputLabel value="Nome:" />
			<h:inputText name="textNome" size="50" value="#{bean.objeto.nome}" />

			<h:outputLabel value="Sigla:" />
			<h:inputText name="textSigla" size="50" value="#{bean.objeto.sigla}" />

		</h:panelGrid>
		
	</ui:define>

</ui:composition>

Um abraço a todos!

RESOLVIDO - Tinha me esquecido de colocar o parâmetro nos métodos do bean (ActionEvent event).

Embora não tenha tido respostas, obrigado assim mesmo… abraço a todos.