Estou tendo problemas para exibir mensagens globais em minha aplicação.
Quanto utilizo a tag <h:commandButton> para o botão que irá efetuar a ação do comando, a mensagem aparece perfeitamente na tela.
Mas quando utilizo o botão a4j:commandButton aparece a seguinte mensagem em meu console:
INFO: WARNING: FacesMessage(s) have been enqueued, but may not have been displayed.
jah aconteceu comigo mas nao soube como resolver
soh sei explicar:
eh pq o h:commandButton faz um submit…
e o messages soh ocorre numa submicao
o a4j:commandButton ele ocorre na mesma renderizacao
entao nao acontece submicao alguma mas mesmo assim a aplicacao percebe q ocorreu alguma execao mas nao vai poder exibir pq nao teve um refresh
mas eu axo q vc pode resolver fazendo com q qndo clicar no botao entao recarrege a pagia
Eu acho ruim renderizar a pagina novamente… perco em desempenho… dessa forma não seria necessário utilizar ajax…
Implementei uma idéia… agora você me diz se é gambiarra!! hehe
Criei vários objetos do tipo String como ex: msgValor, msgDescricao com seus getters e setters… então eu verifico em meu backbean se o campo obrigatório foi preenchido, se não for eu populo o msg através de seu set, então renderizo ao lado do campo da página!!! hehe fede mas resolveu…
Valew
Alessandro_Lazarotti
nao precisa renderizar a pagina novamente, no reRender do commandButton vc diz apenas qual componente deve ser re-renderizado (normalmente um a4j:ouputPanel para messages).
Mas hoje em dia nao precisa nem mais disso, basta usar o rich:messages, é bem simples.
E sim, o que vc fez é gambiarra. :twisted:
Use rich:messages.
dahenz
Valew Alessandro!!! Eu vi seu post logo após escrever aquela estupidez… hehe
Mas vou resolver do jeito que mostraste!!!
Obrigado mesmo… abraço
overkill
Coloca informaçoes codigos do que vc esta tentando fazer fica mais facil imaginar a situação.
dahenz
Vou implementar a idéia do Alessandro!!! Assim que conseguir eu envio o código certinho!!!
Abraço…
robson_vs
da um reRender no seu h:messages
dahenz
Funcionou… mas estou com outro probleminha… Na minha tela possuem dois botoões, como faço para que apenas um botão efetue a validação de campos manipulando mensagens???
Obrigado!!!
robson_vs
dahenz:
Funcionou… mas estou com outro probleminha… Na minha tela possuem dois botoões, como faço para que apenas um botão efetue a validação de campos manipulando mensagens???
Obrigado!!!
coloca um immediate=“true” no botão q ñ quer validar o form
dahenz
Robson… Coloquei o parâmetro immediate como true em um dos botões, e caí em outro problema.
Um botão deve validar um campo do tipo calendar, e outro botão eu salvo.
Quando coloco o immediate=“true” no botão validar data, no backbean o campo fica null, sendo o valor não carregado. Como eu resolveria isso?