Fórum

« Voltar para demoiselle-users

Re: [demoiselle-users] Valor de atributo não grava quando está dentro do co

Visualização combinada Visão plana Exibição em árvore
Tópicos [ Anterior | Próximo ]
Olá.

Retirei o atributo immediate="true" e coloquei a tah
process="@this,evidenciaNome,evidenciaDescricao", porém continua não
funcionando.

Segue como ficou o meu código:

<p:dialog id="modalEvidenciaNew"
header="Evidência"
widgetVar="dialogEvidenciaNew"
modal="true"
width="400" height="400"
resizable="false"
closable="true"
appendToBody="true">
<h:panelGrid id="panelModalEvidencianew">
<h:outputLabel value="#{messages['evidencia.label.nome']}: "
for="evidenciaNome" styleClass="text-input" />
<h:inputText id="evidenciaNome"
value="#{conjuntoEvidenciasEditMB.evidenciaNome}"
title="#{messages['evidencia.alt.nome']}" />
<p:message for="evidenciaNome" />

<h:outputLabel value="#{messages['evidencia.label.descricao']}: "
for="evidenciaDescricao" styleClass="text-input" />
<h:inputText id="evidenciaDescricao"
value="#{conjuntoEvidenciasEditMB.evidenciaDescricao}"
title="#{messages['evidencia.alt.descricao']}" />
<p:message for="evidenciaDescricao" />
<h:panelGrid id="fieldsanexo" columns="1">
<p:commandButton value="#{messages['button.new']}"
action="#{conjuntoEvidenciasEditMB.addAnexo}" update="listAnexo"/>
<p:dataTable id="listAnexo" var="anexo"
value="#{conjuntoEvidenciasEditMB.anexoList}" rowIndexVar="index">

<p:column>
<h:outputLabel value="#{messages['anexo.label.id']}: " for="id"
styleClass="text-input" />
<h:outputText id="id" value="#{anexo.id}" />
<p:message for="id" />
</p:column>

<p:column>
<h:outputLabel value="#{messages['anexo.label.arquivo']}: "
for="arquivo" styleClass="text-input" />
<h:inputText id="arquivo" value="#{anexo.arquivo}"
title="#{messages['anexo.alt.arquivo']}" />
<p:message for="arquivo" />
</p:column>

<p:column>
<f:facet name="header">#{messages['label.action']}</f:facet>
<p:commandButton value="#{messages['button.delete']}"
action="#{conjuntoEvidenciasEditMB.deleteAnexo}" ajax="false"/>
</p:column>
</p:dataTable>
</h:panelGrid>
<p:commandButton value="#{messages['button.save']}"
actionListener="#{conjuntoEvidenciasEditMB.setEvidencia()}"
update="panelModalEvidencia"
oncomplete="dialogEvidenciaNew.hide();"
process="@this,evidenciaNome,evidenciaDescricao"
/>
</h:panelGrid>
</p:dialog>

Att.

Vinícius Ferneda de Lima.


> Olá Vinícius.
>
> Concordo com o Rafael, o seu p:commandButton Salvar está com
> immediate="true" isto quer dizer que
> o *actionListener* será executado em *Process Events* de*
> APPLY_REQUEST_VALUES,* sendo assim o
> nome e a descrição estão nulos, porque o modelo não foi atualizado. Depois
> que o actionListener foi executado,
> o ciclo seguiu para *RENDER_RESPONSE* e nunca chegou em
> *UPDATE_MODEL_VALUES*.
>
>
> Estou enviando os códigos abaixo para que você possa acompanhar o ciclo de
> vida da JSF isto ajuda bastante no momento do debug.
>
>
>
> import javax.faces.event.PhaseEvent;
> import javax.faces.event.PhaseId;
>
> public class CicloDeVidaJSFListener implements
> javax.faces.event.PhaseListener {
>
> private static final long serialVersionUID = 1L;
>
> @Override
> public void afterPhase(PhaseEvent event) {
> System.out.println("END PHASE "+event.getPhaseId());
> }
>
> @Override
> public void beforePhase(PhaseEvent event) {
> System.out.println("START PHASE "+event.getPhaseId());
> }
>
> @Override
> public PhaseId getPhaseId() {
> return PhaseId.ANY_PHASE;
> }
> }
>
>
> E adicione as seguintes linhas no *faces-config.xml* para ativar o
> CicloDeVidaJSFListener .
>
> <lifecycle>
>
> <phase-listener>seu.pacote.CicloDeVidaJSFListener</phase-listener></lifecycle>
>
>
>
>
>
> Em 1 de maio de 2014 22:23, Rafael Odon <odon.rafael@gmail.com> escreveu:
>
> > Seu botão Salvar está com immediate="true", logo irá direto para a fase
> de
> > invocação de aplicação, sem passar pelo processamento de validações e
> > atualização do modelo.
> >
> > Passe para false ou retire essa propriedade. Utilize o atributo process e
> > informe os id's dos campos que devem ser processados por esse botão ajax,
> > vai ficar algo assim: process="@this,nome,descricao"
> >
> > Até+
> >
> >
> > 2014-05-01 22:17 GMT-03:00 Vinícius Ferneda de Lima <
> > vinicius.ferneda@gmail.com>:
> >
> > > Olá jovens.
> > >
> > > Estou enfrentando um problema na utilização do componente <p:dialog>
> para
> > > gravação de registros.
> > >
> > > Quando clico no botão que chama o método "setEvidencia()" no meu
> > ManageBean
> > > as informações de "nome" e "descrição" do objeto "EvidenciaAux" estão
> > > nulas.
> > >
> > > O que posso fazer para o que foi informado nos campos em tela seja
> > > atribuído ao objeto?
> > >
> > > Segue o dialog:
> > >
> > > <!--Código-->
> > >
> > > <p:dialog id="modalEvidenciaNew"
> > > header="Evidência"
> > > widgetVar="dialogEvidenciaNew"
> > > modal="true"
> > > width="400" height="400"
> > > resizable="false"
> > > closable="true"
> > > appendToBody="true">
> > > <h:panelGrid id="panelModalEvidencianew">
> > > <h:outputLabel value="#{messages['evidencia.label.nome']}: " for="nome"
> > > styleClass="text-input" />
> > > <h:inputText id="nome"
> > > value="#{conjuntoEvidenciasEditMB.bean.evidenciaAux.nome}"
> > > title="#{messages['evidencia.alt.nome']}" />
> > > <p:message for="nome" />
> > >
> > > <h:outputLabel value="#{messages['evidencia.label.descricao']}: "
> > > for="descricao" styleClass="text-input" />
> > > <h:inputText id="descricao"
> > > value="#{conjuntoEvidenciasEditMB.bean.evidenciaAux.descricao}"
> > > title="#{messages['evidencia.alt.descricao']}" />
> > > <p:message for="descricao" />
> > > <p:commandButton value="#{messages['button.save']}"
> > > actionListener="#{conjuntoEvidenciasEditMB.setEvidencia()}"
> > > immediate="true"
> > > update="panelModalEvidencia"
> > > oncomplete="dialogEvidenciaNew.hide();"
> > > />
> > > </h:panelGrid>
> > > </p:dialog>
> > >
> > > <!--Codigo-->
> > >
> > > Att.
> > >
> > > Vinícius Ferneda de Lima.
> > >
> > >
> >
> ------------------------------------------------------------------------------
> > > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> > > Instantly run your Selenium tests across 300+ browser/OS combos. Get
> > > unparalleled scalability from the best Selenium testing platform
> > available.
> > > Simple to use. Nothing to install. Get started now for free."
> > > http://p.sf.net/sfu/SauceLabs
> > > _______________________________________________
> > >
> > > Portal: http://www.frameworkdemoiselle.gov.br
> > > Foruns: http://forum.frameworkdemoiselle.gov.br
> > > Tracker: http://tracker.frameworkdemoiselle.gov.br
> > > _______________________________________________
> > >
> > > Para editar sua assinatura:
> > > https://lists.sourceforge.net/lists/listinfo/demoiselle-users
> > >
> >
> >
> ------------------------------------------------------------------------------
> > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> > Instantly run your Selenium tests across 300+ browser/OS combos. Get
> > unparalleled scalability from the best Selenium testing platform
> available.
> > Simple to use. Nothing to install. Get started now for free."
> > http://p.sf.net/sfu/SauceLabs
> > _______________________________________________
> >
> > Portal: http://www.frameworkdemoiselle.gov.br
> > Foruns: http://forum.frameworkdemoiselle.gov.br
> > Tracker: http://tracker.frameworkdemoiselle.gov.br
> > _______________________________________________
> >
> > Para editar sua assinatura:
> > https://lists.sourceforge.net/lists/listinfo/demoiselle-users
> >
>
>
> ------------------------------
>
>
> ------------------------------------------------------------------------------
> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> Instantly run your Selenium tests across 300+ browser/OS combos. Get
> unparalleled scalability from the best Selenium testing platform available.
> Simple to use. Nothing to install. Get started now for free."
> http://p.sf.net/sfu/SauceLabs
>
> ------------------------------
>
> _______________________________________________
> demoiselle-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/demoiselle-users
> http://www.frameworkdemoiselle.gov.br
> Foruns: http://sf.net/apps/phpbb/demoiselle
> Tracker: http://sf.net/mantisbt/phpbb/demoiselle
>
> Fim da Digest demoiselle-users, volume 466, assunto 1
> *****************************************************
>
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos. Get
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________

Portal: http://www.frameworkdemoiselle.gov.br
Foruns: http://forum.frameworkdemoiselle.gov.br
Tracker: http://tracker.frameworkdemoiselle.gov.br
_______________________________________________

Para editar sua assinatura:
https://lists.sourceforge.net/lists/listinfo/demoiselle-users