error-page não funciona com JSF  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
Anastasia
Thread.start()

Membro desde: 08/03/2007 17:59:39
Mensagens: 35
Localização: Rio de Janeiro
Offline

Olá

configurei a página de erro no web.xml desta forma



porém, com jsf, ao ocorrer um erro, a requisição não é redirecionada para a página error.jsp.
Isto também ocorre se eu faço



ou




Agora, se eu redireciono com sendRedirect, assim:


funciona normalmente.

Eu não entendi nada... então, gostaria da ajuda dos + experientes:

Como é que vcs tratam erro usando Jsf?

Abraços!



" A compaixão pelos animais está intimamente ligada a bondade de caráter, e pode ser seguramente afirmado que quem é cruel com os animais não pode ser um bom homem."
Arthur Schopenhauer
fabiobotelhojg@hotmail.co
Entusiasta Java

Membro desde: 01/11/2007 15:12:25
Mensagens: 24
Offline

Oi Anastasia, eu estou tento o mesmo problema, quando crio uma pagina sem jsf tags funciona normalmente, porem quando tento colocar jsf tags ela para de funcionar. Você ja encontrou uma solução para o seu problema ? Caso sim, me escreve a solução por favor.

Obrigado antecipadamente pela ajuda,
Fabio Botelho
nessa_uepa
Thread.start()
[Avatar]

Membro desde: 24/10/2008 13:09:01
Mensagens: 35
Offline

É, só consegui aqui quando a página de erro não tem tags JSF ou facelets.
=s

Será que tem como usar isso com JSF e/ou Facelets na página de erro mapeada?

gomesrod
GUJ Ranger
[Avatar]

Membro desde: 11/05/2007 19:46:22
Mensagens: 901
Offline

Que estranho, aqui funciona normalmente inclusive com páginas Jsf.

Só tem uma coisa que vimos que não dá certo: é quando usamos algum mecanismo de template, como o Tiles. Nesse caso, quando acontece erro na página do "corpo" ele é tratado pelo próprio mecanismo de template que manda uma tela de erro dele mesmo.

O que exatamente acontece no caso de vocês ?

This message was edited 1 time. Last update was at 19/01/2009 09:56:50

nessa_uepa
Thread.start()
[Avatar]

Membro desde: 24/10/2008 13:09:01
Mensagens: 35
Offline

O que acontece, é que quando você mapeia no web.xml, quando ocorre o erro, ele envia para a página mapeada, mas não é o JSF que está controlando a navegação nesse caso, então ele não consegue traduzir as tags JSF.
É o mesmo problema de mapear a página inicial no web.xml.
Por isso você mapeia a página forward.jsp ou algo do tipo como página inicial no web.xml, que dá um forward pra página JSF inicial verdadeira.
É o mesmo caso aqui.
Mapeie o erro no web.xml para um página erro_redireciona.jsp por exemplo que dê um forward pra verdadeira página de erro, esta sim que pode conter tags JSF, facelets e o diabo a quatro

Ex da página redireciona_erro:




nessa_uepa
Thread.start()
[Avatar]

Membro desde: 24/10/2008 13:09:01
Mensagens: 35
Offline

gomesrod wrote:Que estranho, aqui funciona normalmente inclusive com páginas Jsf.

Só tem uma coisa que vimos que não dá certo: é quando usamos algum mecanismo de template, como o Tiles. Nesse caso, quando acontece erro na página do "corpo" ele é tratado pelo próprio mecanismo de template que manda uma tela de erro dele mesmo.

O que exatamente acontece no caso de vocês ?


No seu caso funcionou a página de erro com tags JSF NA PÁGINA DE ERRO e sem fazer esse esqueminha que eu falei?

gomesrod
GUJ Ranger
[Avatar]

Membro desde: 11/05/2007 19:46:22
Mensagens: 901
Offline

nessa_uepa wrote:No seu caso funcionou a página de erro com tags JSF NA PÁGINA DE ERRO e sem fazer esse esqueminha que eu falei?

Ou talvez eu não tenha entendido direito a pergunta
Não utilizei tags Jsf na página de erro, pensei que se tratasse de fazer o tratamento de erros que aconteceram na página JSF, mas sem necessariamente usar Faces na error.jsp - ou seja, é um JSP "normal"

This message was edited 1 time. Last update was at 19/01/2009 12:23:08

guimoz
JavaEvangelist

Membro desde: 11/08/2007 19:21:10
Mensagens: 455
Localização: Bento Gonçalves - RS
Offline

bom ... eu trato os erros com strings ....

meus metodos retornan uma string ... "ok" ou "erro" ...
e eu configuro normalmente nas minhas regras de navegação .. por exemplo




Tecnoage
GUJ Master

Membro desde: 13/03/2005 23:18:07
Mensagens: 1723
Localização: SP
Offline

pensando mais simples possível, vc pode dar um catch nas excessões de mais alto nível no MB, e retornar uma string "error", por exemplo, como o guimoz falou...

Arquiteto de Software
Sysped Solutions
R3 SAP CAT-83, NF-e, ECD, EFD, CT-e, MANAD, IN86
www.sysped.com.br
[Email] [WWW] [MSN]
gomesrod
GUJ Ranger
[Avatar]

Membro desde: 11/05/2007 19:46:22
Mensagens: 901
Offline

Tecnoage wrote:pensando mais simples possível, vc pode dar um catch nas excessões de mais alto nível no MB, e retornar uma string "error", por exemplo, como o guimoz falou...

O problema é que cedo ou tarde elas vão escapar hehe

E na verdade a pergunta não era sobre como tratar erros no JSF... aliás, como vc pode ver acima eu também entendi errado no começo. O que "tá pegando" é criar uma página de erro usando Faces.
guimoz
JavaEvangelist

Membro desde: 11/08/2007 19:21:10
Mensagens: 455
Localização: Bento Gonçalves - RS
Offline

mas entao ... vc trata ela com strings, redireciona pra uma mesma pagina error.jsp ... e monta ela com as tags

<h:messages> ou <h:message> usando um .properties
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team