Pessoal,
Não sei porque o meu p:commandButton está abrindo dois dialogs ao mesmo tmepo, não quero que isso aconteça.
<p:commandButton image="ui-icon-pencil" action="#{produtoController.prepararParaEditarEVisualizar}" oncomplete="manterProdutoDialog.show()"
update=":formManterProduto">
<f:setPropertyActionListener
value="#{produto}" target="#{produtoController.produtoSelecionado}" />
</p:commandButton>
<p:commandButton image="ui-icon-search" action="#{produtoController.prepararParaEditarEVisualizar}" oncomplete="detalhesProdutoDialog.show()" update=":formDetalhesProduto">
<f:setPropertyActionListener value="#{produto}" target="#{produtoController.produtoSelecionado}" />
</p:commandButton>
<p:dialog header="Gerenciar produto" widgetVar="manterProdutoDialog"
minWidth="480" minHeight="200" resizable="true" closable="true"
showEffect="slide" hideEffect="slide"></p:dialog>
<p:dialog header="Detalhes do produto" widgetVar="detalhesProdutoDialog"
minWidth="200" minHeight="100" resizable="true" closable="true"
showEffect="slide" hideEffect="slide"> </p:dialog>
MB:
public void prepararParaEditarEVisualizar() throws IllegalAccessException, InvocationTargetException {
BeanUtils.copyProperties(this.produto, this.produtoSelecionado);
}
qual dos dois commandButton está fazendo isso?
ou é os dois?
Está acontecendo mais no primeiro botão:
<p:commandButton image="ui-icon-pencil" action="#{produtoController.prepararParaEditarEVisualizar}" oncomplete="manterProdutoDialog.show()"
update=":formManterProduto">
<f:setPropertyActionListener
value="#{produto}" target="#{produtoController.produtoSelecionado}" />
</p:commandButton>
Já fiz várias mudanças no meu código, já pesquisei no Google e não consegui resolver esse problema ainda.
Aparentemente, está tudo certo, mas ele continua abrindo dois dialogs.
[quote=JeffersonJCosta]Já fiz várias mudanças no meu código, já pesquisei no Google e não consegui resolver esse problema ainda.
Aparentemente, está tudo certo, mas ele continua abrindo dois dialogs.[/quote]
não sei o que te dizer, pq ao meu ver está tudo correto.
uma pergunta, o icone está aparecendo?
eu uso o nome do icone no icon="…algum icone…" e não no image
Pois é. Não estou achando onde está o problema também, muito estranho.
O icone aparece sim. Vou tentar altera isso, vai saber né?
Troquei a propriedade image por icon, só para testar mesmo, e continua tudo igual.
Não sei onde está o erro…
Não os form estão todos separados e identicados. Também já verifiquei isso, várias vezes, por isso estou achando estranho.
Quer o código da página toda? - é muita grande.
cara, pode ser, entao posta no pastebin, melhor , e passa o link =D
Segue o link para o código completo da página onde está acontecendo o problema:
http://pastebin.com/KdbTAz5Y
Pessoal,
Já refiz toda a minha página, do zero, e o problema continua.
Alguem desconfia o que pode ser?
apaga tudo e refaz, as vezes é a melhor coisa a fazer qndo não se tem explicação. :?
Pois é, já fiz isso e continua acontecendo a mesma coisa.
Por isso, voltei a postar aqui, já tentei de tudo.
Isso só acontece a primeira vez que eu clico no commandButton, depois não acontece mais.
Mano, faz um teste, poe todos os seus p:dialog, dentro de tags h:form, nao precisa ser todos no mesmo h:form.
Acabei de fazer isso e nao mudou.
Descobri onde está o erro, mas não sei como consertar.
Seguinte, dentro do meu dataTable, eu tenho um evento ajax, que é acionado quando o usuário clica na linha da tabela, esse evento é que está abrindo as duas janelas ao mesmo tempo, acabei de retirá-lo do código e o problema parou.
<p:ajax event="rowSelect" update=":formDetalhesProduto"
listener="#{produtoController.prepararParaEditarEVisualizar}"
oncomplete="detalhesProdutoDialog.show()"/>
A pergunta é: como manter esse evento, mas sem o problema de abrir o detalhesProdutoDialog, quando eu clicar no commandButton de editar o produto?
Era para abrir o detalhesProdutoDialog apensa quando eu clicasse na linha ou no botão especifico par aisso e não quando eu clico no botão.