Fórum Primafaces usando dataTable com Dialog #459753
29/10/2013
0
att,
Adriano de Aguiar
Adriano Aguiar
Curtir tópico
+ 0Posts
06/11/2013
Roselito Silva
1- no managed bean, tenho um atributo pessoa;
2- no botão do dataTable, chamo um método do bean e passo a pessoa selecionada, por exemplo, #{controlador.dependentes(item)}, onde item é a linha do dataTable, que também é do tipo pessoa.
3- no dialog, uso sempre #{controlador.pessoa.atributo} como value dos inputs
Daí para frente é só preencher o formulário do dialog, gravar e atualizar a tabela depois de gravar.
Espero que ajude.
Gostei + 0
07/11/2013
Adriano Aguiar
att
Gostei + 0
07/11/2013
Eduardo Pessoa
1- no managed bean, tenho um atributo pessoa;
2- no botão do dataTable, chamo um método do bean e passo a pessoa selecionada, por exemplo, #{controlador.dependentes(item)}, onde item é a linha do dataTable, que também é do tipo pessoa.
3- no dialog, uso sempre #{controlador.pessoa.atributo} como value dos inputs
Daí para frente é só preencher o formulário do dialog, gravar e atualizar a tabela depois de gravar.
Espero que ajude.
fiz algo parecido com JSF, mas acompanhando video aulas.
Gostei + 0
07/11/2013
Adriano Aguiar
Gostei + 0
07/11/2013
Roselito Silva
Gostei + 0
07/11/2013
Adriano Aguiar
att,
Gostei + 0
07/11/2013
Roselito Silva
Um bean com @SessionScoped mantém os valores dos atributos até você fechar o navegador. Já o @ViewScoped mantém até você fechar a página. E o @RequestScoped perde tudo logo depois de um submit...
Portanto, se você tiver um atributo pessoa do tipo Pessoa instanciado no seu bean @ViewScoped, vai poder pegar o valor dele enquanto estiver na mesma página.
Gostei + 0
08/11/2013
Eduardo Pessoa
essa video é da devmedia, é um otimo curso.
Gostei + 0
08/11/2013
Adriano Aguiar
att
Gostei + 0
09/11/2013
Eduardo Pessoa
Gostei + 0
09/11/2013
Adriano Aguiar
<p:dialog widgetVar="dialogSolicitacao" id="dlgsolicitacao"
header="Solicitação" modal="false" showEffect="clip"
hideEffect="clip" minWidth="800">
<h:form id="form">
<p:panel header="Cadastro de Pessoas que residem neste imóvel!"
styleClass="panelprincipal" style="width: 850px;">
<p:panel header="Pessoa" id="morad"
style="text-align: left; width: 800px;">
<p:messages id="messages" />
<p:panelGrid columns="2">
<h:outputLabel value="Classificação idade!" id="classificacao" />
<p:selectOneMenu value="#{pessoaBean.morador.classificacao}"
required="true" requiredMessage="Selecione uma das opções!">
<f:selectItem itemValue="" itemLabel="Selecione..." />
<f:selectItems value="#{pessoaBean.listaItem}" var="pessoa"
itemLabel="#{pessoaBean.descricao}" itemValue="#" />
</p:selectOneMenu>
<h:outputText value="Quantidade" id="quantidade" />
<p:inputText value="#{pessoaBean.morador.quantidade}" size="50"
required="true"
requiredMessage="Informe a Quantidade de Morador!"></p:inputText>
</p:panelGrid>
</p:panel>
<f:facet name="footer">
<p:commandButton value="Salvar" action="#{pessoaBean.salvar}"
update="form"></p:commandButton>
</f:facet>
</p:panel>
</h:form>
</p:dialog>
<p:dialog widgetVar="dialogVeiculo" id="dlgsolicitacaoVeiculo"
header="Cadastro de VeÃculo" modal="false" showEffect="clip"
hideEffect="clip" minWidth="800">
<h:form id="veiculo">
<p:panel header="Cadastro de VeÃculo!" styleClass="panelprincipal"
style="width: 850px;">
<p:panel header="Cliente" id="vei"
style="text-align: left; width: 800px;">
<p:messages id="messages" />
<p:panelGrid columns="2">
<h:outputText value="Marca" id="marca" />
<p:inputText value="#{veiculoBean.veiculo.marca}" size="50"
required="true" requiredMessage="Informe a marca do veÃculo"
label="marca"></p:inputText>
<h:outputText value="Tipo de VeÃculo" id="tipo" />
<p:inputText value="#{veiculoBean.veiculo.tipo}" size="50"
required="true" requiredMessage="Informe a tipo de veÃculo"
label="tipo"></p:inputText>
<h:outputText value="Placa" id="placa" />
<p:inputText value="#{veiculoBean.veiculo.placa}" size="50"
required="true" requiredMessage="Informe a tipo de veÃculo"
label="placa"></p:inputText>
<h:outputText value="Classis" id="classi" />
<p:inputText value="#{veiculoBean.veiculo.chassi}" size="50"
required="true" requiredMessage="Informe o classis" for="classi"></p:inputText>
</p:panelGrid>
</p:panel>
<f:facet name="footer">
<p:commandButton value="Salvar" action="#{veiculoBean.salvar}"
update=":listaV veiculo"></p:commandButton>
</f:facet>
</p:panel>
</h:form>
<h:form id="listaV">
<p:dataTable id="dataTable" var="m" value="#{veiculoBean.lista}"
scrollable="false" paginator="true" rows="10" scrollHeight="400"
paginatorTemplate=" "
rowsPerPageTemplate="5,10,15">
<f:facet name="header">
Lista de Moradores
</f:facet>
<p:column>
<f:facet name="header">
<h:outputText value="Codigo" />
</f:facet>
<h:outputText value="#{m.id}" />
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Marca" />
</f:facet>
<h:outputText value="#{m.marca}" />
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Tipo de VeÃculo" />
</f:facet>
<h:outputText value="#{m.tipo}" />
</p:column>
<p:column>
<f:facet name="header">
<h:outputText value="Placa" />
</f:facet>
<h:outputText value="#{m.placa}" />
</p:column>
<p:column headerText="Editar">
<f:facet name="header">Editar</f:facet>
<h:commandLink action="#{veiculoBean.doUpdateVeiculos(m)}"
oncomplete="dialogEditarVeiculo.show()">
<h:graphicImage library="img" name="btnEditar.png"
style="border:0;"></h:graphicImage>
</h:commandLink>
</p:column>
</p:dataTable>
</h:form>
<p:dialog widgetVar="dialogEditarVeiculo" id="dlgsolicitacaoVeicu"
header="Alterar Veiculo" modal="false" showEffect="clip"
hideEffect="clip" minWidth="800">
<h:form id="formAlt">
<p:panel header="Cadastro de VeÃculo!" styleClass="panelprincipal"
style="width: 850px;">
<p:panel header="Cliente" id="vei"
style="text-align: left; width: 800px;">
<p:messages id="messages" />
<p:panelGrid columns="2">
<h:outputText value="Marca" id="marcaEditar" />
<p:inputText value="#{veiculoBean.veiculo.marca}" size="50"
required="true" requiredMessage="Informe a marca do veÃculo"
label="marcaEditar"></p:inputText>
<h:outputText value="Tipo de VeÃculo" id="tipoEditar" />
<p:inputText value="#{veiculoBean.veiculo.tipo}" size="50"
required="true" requiredMessage="Informe a tipo de veÃculo"
label="tipoEditar"></p:inputText>
<h:outputText value="Placa" id="placaEditar" />
<p:inputText value="#{veiculoBean.veiculo.placa}" size="50"
required="true" requiredMessage="Informe a tipo de veÃculo"
label="placaEditar"></p:inputText>
<h:outputText value="Classis" id="classiEditar" />
<p:inputText value="#{veiculoBean.veiculo.chassi}" size="50"
required="true" requiredMessage="Informe o classis"
for="classiEditar"></p:inputText>
</p:panelGrid>
</p:panel>
<f:facet name="footer">
<p:commandButton value="Salvar" action="#{veiculoBean.salvar}"></p:commandButton>
</f:facet>
</p:panel>
</h:form>
</p:dialog>
</p:dialog>
Gostei + 0
10/11/2013
Roselito Silva
Gostei + 0
10/11/2013
Adriano Aguiar
Gostei + 0
10/11/2013
Adriano Aguiar
Gostei + 0
10/11/2013
Roselito Silva
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)