JSF atualizar dataTable ao se clicar num Button

0 respostas
K

Bom dia caros amigos do GUJ, estou com um problema como segue: ao clicar num botão submeter, eu coloco o objeto fluxo dentro do HashMap referenciado pela dataTable.Nesse button dou update na dataTable mas ela não mostra o objeto adicionado. Alguém pode me ajudar?.. Segue também o código:

<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"
	xmlns:p="http://primefaces.prime.com.tr/ui"
	xmlns:mj="http://mojarra.dev.java.net/mojarra_ext"
	xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head />
<h:body>
	<div id="formCadastro">
		<h:form prependId="false">
			<h:commandLink value="Voltar" action="#{SolicitacaoBean.doVoltar}"
				id="cmdVoltar" />
		</h:form>

		<h:form id="formCadastroSolicitacao" prependId="false">

			<p:fieldset legend="Cadastro de Solicitação">
			
				<h:panelGrid columns="2" id="pnlSolicitacao" >
				
					<h:outputLabel id="lblNome" for="txtNome" value="Nome da Solicitação:*" />
					<h:inputText id="txtNome" value="#{SolicitacaoBean.solicitacao.nmSolicitacao}" maxlength="29" />
					
					<h:outputLabel id="lblDescricao" for="txtDescricao" value="Descrição da Solicitação:" />
					<h:inputTextarea id="txtDescricao" value="#{SolicitacaoBean.solicitacao.dsSolicitacao}" maxlength="49" />
						
			    </h:panelGrid>
				
			</p:fieldset>

		</h:form>
		   
	    <h:panelGrid id="pnlFluxo" columns="2">
					 <h:form id="formCadPassoFluxo" prependId="false">
						<p:fieldset legend="Fluxo de Tramitação">
								<c:choose>
									<c:when test="${(SolicitacaoBean.fluxo.nrSeq ge 0) and (SolicitacaoBean.fluxo.nrSeq lt 99)}">
										<h:panelGrid id="pnlPassos" columns="2">
										<h:outputLabel id="lblSeq" value="Passo ${SolicitacaoBean.fluxo.nrSeq} :*" />
										<h:outputLabel />
										<h:outputLabel id="lblUnidadeOrigem" value="Origem:" for="cmbUnidade" />
										
										<h:selectOneMenu id="cmbUnidade"
											value="#{SolicitacaoBean.fluxo.id.idUnidade}">
											<f:selectItem itemValue="0" itemLabel="Todos" />
											<f:selectItems id="selUnidades"
												value="#{SolicitacaoBean.listaSetores}" var="obj"
												itemLabel="#{obj.nmSglUnidade}" itemValue="#{obj.idUnidade}" />
										</h:selectOneMenu>
										
										<h:outputLabel id="lblUnidadeDestino" value="Destino:" for="cmbUnidade2" />
										
										<h:selectOneMenu id="cmbUnidade2"
											value="#{SolicitacaoBean.fluxo.idUnidadeDestino}">
											<f:selectItem itemValue="0" itemLabel="Todos" />
											<f:selectItems id="selUnidades2"
												value="#{SolicitacaoBean.listaSetores}" var="l"
												itemLabel="#{l.nmSglUnidade}" itemValue="#{l.idUnidade}" />
										</h:selectOneMenu>
										
										</h:panelGrid>
								    
								    </c:when>
								    <c:otherwise>
										
								    </c:otherwise>
						
								</c:choose>
									
								
								<p:commandButton update="tbFluxo" 
												 type="submit"
									             value="Adicionar Passo"
									             action="#{SolicitacaoBean.addPassoFluxo}" />

						</p:fieldset>

					
						<p:fieldset legend="Tabela Fluxo">
								<c:choose>
									<c:when test="${not empty SolicitacaoBean.listaFluxos}">
										<p:dataTable id="tbFluxo" 
										             var="u"
													 value="#{SolicitacaoBean.listaFluxos}" scrollable="true"
											         height="200" width="195">
	
													<p:column id="col01" headerText="Passo" style="width:100px">
														<h:outputText value="#{u.nrSeq}" style="width:100px" />
													</p:column>
			
													<p:column id="col02" headerText="Id Origem" style="width:100px">
														<h:outputText value="#{u.relacionamentoEoSol.id.idUnidade}" style="width:100px" />
													</p:column>
													
													<p:column id="col03" headerText="Id Destino" style="width:100px">
														<h:outputText value="#{u.idUnidadeDestino}" style="width:100px" />
													</p:column>
													
													<p:column id="col09" headerText="Delete" style="width:50px">
															<p:commandButton id="tbExcluir" 
															                 image="ui-icon-close"
																			 action="#{UsuarioBean.doRemovePasso(u)}"
																			 update="tbFluxo"/>
													</p:column>
													
										</p:dataTable>
									</c:when>
									</c:choose>

								</p:fieldset>
						
					</h:form>

		</h:panelGrid>

	</div>

</h:body>
</html>

Quando debuguei, notei que a lista estah sendo preenchida, o problema é que não é atualizada na tela…

Obrigado pela atenção…

Criado 17 de agosto de 2011
Respostas 0
Participantes 1