Pessoal, estou quebrando a cabeça aqui com uma solução que tenho que arranjar para uma tela de um sistema que estou fazendo aqui, é assim, tenho um formulário com diversos campos de filtro para geração de um relatório e quando eu clicar em gerar relatório, preciso que se o processo de validação passou, preciso abrir esse relatório em outra janela, mas se a validação não passar, deve permanecer na mesma tela, acontece que estou fazendo a validação via JSF. alguem imagina como posso fazer isso, estou batendo cabeça aqui e não consigo achar solução, obrigado ai sem alguem puder me dar uma ajuda.
Se você fizer a validação via ManagedBean, dá uma olhada nisso:
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, “Mensagem de erro!”, null));
E no JSF, coloca o seguinte:
<h:messages errorStyle=“red”/>
Dai quando tratar as informações, a mensagem será escrita no lugar do messages.
Espero que ajude…
eu já faço isso cara, minha dúvida é com o lance de abrir a pagina depois do submit em OUTRA JANELA, somente se não houve nenhum alerta de erro de validação.
O método que você chama para fazer a validação ele retorna uma String?
Se retornar, quando acontecer algum erro, retorne null para que fique na mesma tela.
Não tenho nenhum problema com encaminhamentos, meu problema é em ABRIR em UMA NOVA JANELA, consigo caminhar normalmente entre as telas, porem, se a validação passar, preciso ABRIR UMA NOVA JANELA, se a validação não passar, fica na MESMA JANELA.
tenho que arranjar uma solução ENTRE JANELAS, e não ENTRE PAGINAS.
mas valeu por tentar haamilton.