Form dentro de outro Form

3 respostas
rafaelrodrigues1607

Existe algum problema em realizar isso? Estou precisando salvar os dados de um rich:tabPanel de uma só vez, mas quando mudo de aba não dá submit. Estava dando uma lida e disse que a melhor solução é colocar um Form para cada Aba(Tab). Só que quando fiz isso as abas que coloquei os Forms sumiram.

Exemplo:

<a4j:form id="selecaoDeclaracaoForm" styleClass="edit">
<rich:tabPanel switchType="server">
				<h:form id="selecaoDeclaracaoFormDIAC">
			        <rich:tab label="Imóvel 1" reRender="panelTabs" process="panelTabs" ajaxSingle="true">   
			            <ui:include src="/declaracao/DeclaracaoImovelForm2.xhtml"/>	           
			        </rich:tab>
			    </h:form>
			    <h:form id="selecaoDeclaracaoFormContribuinte">
			        <rich:tab label="Ficha Contribuinte" reRender="panelTabs" process="panelTabs" ajaxSingle="true">   
			                <ui:include src="/declaracao/DeclaracaoContribuinteForm2.xhtml"/>
			        </rich:tab>
			    </h:form>
			    <h:form id="selecaoDeclaracaoFormDIAT">
			        <rich:tab label="Imóvel 2" reRender="panelTabs" process="panelTabs" ajaxSingle="true" rendered="#{!declaracao.imovel.isento}">   
			                <ui:include src="/declaracao/DeclaracaoImovelDiatForm2.xhtml"/>
			        </rich:tab>
			    </h:form>
			    <h:form id="selecaoDeclaracaoFormImposto">
			        <rich:tab label="Cálculo Imposto" reRender="panelTabs" process="panelTabs" ajaxSingle="true" >   
			                <!--ui:include src="/declaracao/DeclaracaoImpostoForm2.xhtml"/-->
			        </rich:tab>
			    </h:form>
                               	 
</rich:tabPanel>
</a4j:form>

3 Respostas

balrog

ateh onde sei, um form dentro de outro form eh HTML invalido, portando evite esse tipo de coisa

Diego_Adriano

É cara, não é permitido.
Eu vi uma solução para isso no Tomahawk da Apache, mas não sei se ele ira prozear com o RichFaces.
A solução que eles encontraram foi cria uma Tag “SUBFORM”.
http://myfaces.apache.org/tomahawk/index.html

Bem, pode ser tb o Escopo do seu Bean, vc pode estar usando como Request e ele intende que precisa “Matar” a requisição na troca da Aba, pode ser …

rafaelrodrigues1607

Encontrei a solução pessoal. Eu estava fazendo errado colocando o form em volta do rich:tab. O form fica dentro do rich:tab. Então quando eu clico em outra aba ela dá submit e atualiza os valores no meu Bean. Obrigado pela ajuda.

Criado 31 de janeiro de 2012
Ultima resposta 31 de jan. de 2012
Respostas 3
Participantes 3