Você está na página 1de 3

17/09/13

17/09/13 FACEBOOK TWITTER CONTATO PRINCIPAL ARQUITETURA DE SOFTWARE Implementando página de erro com JSF - Portal

ARQUITETURA DE SOFTWARE

Implementando página de erro com JSF - Portal Arquiteto

Implementando página de erro com JSF - Portal Arquiteto DESENVOLVIMENTO ENGENHARIA DE SOFTWARE OUTROS Principal

DESENVOLVIMENTO

ENGENHARIA DE SOFTWARE

OUTROS

DESENVOLVIMENTO ENGENHARIA DE SOFTWARE OUTROS Principal DESENVOLVIMENTO Implementando página de erro com JSF ←
ENGENHARIA DE SOFTWARE OUTROS Principal DESENVOLVIMENTO Implementando página de erro com JSF ← Publicação

Implementando página de erro com JSF

Implementando página de erro com JSF

SAMUEL MARTINS DELFIM

26 DEAGOSTO DE2009

2

DELFIM 26 DEAGOSTO DE2009 2 Próxima Publicação → Algumas pessoas estão tendo dúvidas sobre como implementar

Algumas pessoas estão tendo dúvidas sobre como implementar uma página de erro com JSF, e resolvi então criar este post para explicar uma maneira de implementar.

Para se realizar o redirecionamento pode se utilizar o ActionListener do JSF. Segue abaixo um exemplo de implementação da classe deste ActionListener:

/**

*Classeresponsávelportratarerrosinesperadosdosistema.

*

*@authorSamuelDelfim

Pesquisa

Procure aqui Subscribe 406 100 to RSS Feed Seguidores Fãs Popular Comentários Tags
Procure aqui
Subscribe
406
100
to RSS Feed
Seguidores
Fãs
Popular
Comentários
Tags
JSFversus Struts

6

de outubro de 2008, 6 Comentários

EJB 3 versus Spring

3

de outubro de 2008, 5 Comentários

DAO Genérico com JPA e Hibernate

4

de novembro de 2008, 5 Comentários

*

*/

Categorias

publicclassExceptionHandlerextendsActionListenerImpl{

@Override

publicvoidprocessAction(ActionEventevent){

//ObtemocontextoJSF

FacesContextcontext=FacesContext.getCurrentInstance();

try{

//ExecutaométododaclassePai

super.processAction(event);

}catch(Exceptione){

//Seocorrerumerroinesperado,exibeamensagemabaixo

context.addMessage(null,newFacesMessage(

FacesMessage.SEVERITY_FATAL,e.getMessage(),null));

//Redirecionaparaapaginacomomapeamento'erro'nofaces-con

context.getApplication().getNavigationHandler().handleNavigation

}

}

}

context,null,"erro");

} } } context,null,"erro"); Pode-se, por exemplo, na classe acima realizar tratamentos

Pode-se, por exemplo, na classe acima realizar tratamentos diferentes para cada tipo de exceção.

Para aplicar o Listener em uma aplicação jsf deve ser colocado o seguinte trecho dentro do arquivo faces- config.xml:

com.thinkworks.handler.exception.ExceptionHandler

com.sun.facelets.FaceletViewHandler

pt_BR

17/09/13

Implementando página de erro com JSF - Portal Arquiteto

com.thinkworks.mensagens.Mensagens

O trecho a ser copiado se refere à tage deve ser aplicado ao view-handler específico. Neste caso, o

ViewHandler utilizado é o do projeto facelets que está sendo utilizado no projeto em questão.

Também no arquivo faces-config.xml deve ser realizado o mapeamento da página de erro. Segue abaixo um exemplo de mapeamento de página de erro:

erro

/pages/erro/paginaErro.xhtml

É isto aí pessoal. Espero ter ajudado…

É isto aí pessoal. Espero ter ajudado… PROVA DE SELEÇÃO SOA USABILIDADE Publicações

Publicações Recentes

TAGS » DESENVOLVIMENTO, JSF, WEB

POSTADOS EM » DESENVOLVIMENTO WEB

, JSF , WEB POSTADOS EM » DESENVOLVIMENTO WEB Sobre o autor: Samuel Martins Delfim View

Sobre o autor: Samuel Martins Delfim

View all posts by Samuel Martins Delfim

Formado em Ciência da Computação na UFMG e pós-graduado em Estratégias de

arquitetura de sistemas na PUC. Atua como Arquiteto de Software na empresa Unisys

em Belo Horizonte. Já trabalhou em diversas empresas entre elas Red Hat, Mapfre

Seguros, Bionexo, Synos, Squadra. Com mais de dez anos de experiência na área de software e TI, atual

nas áreas de saúde, bancos, e-commerce, GED, leilão, energia e em grandes projetos do governo.

Instrutor dos cursos de Struts, POO, Análise e modelagem com UML, Hibernate e Processo de

desenvolvimento de Software.

Related »

2 Comentários »

JBossInBossa2010 Method 2 Comentários » Jose 11 de maio de 2010 de 11:25 am - Reply

Jose 11 de maio de 2010 de 11:25 am - Reply

Olá Samuel,

implementei minha página de erro conforme o exemplo desse artigo, mas percebi que

quando utilizo, por exemplo, um botão com actionListener , quando dá erro, o erro não é

tratado pelo meu ActionListener. Eu posso ter implementado errado?

pelo meu ActionListener. Eu posso ter implementado errado? admin 12 de maio de 2010 de 6:51

admin 12 de maio de 2010 de 6:51 pm - Reply

Realmente Jose,

Este Handler não serviria para exceções lançadas de Action Listeners. Devia

ter explicado isto no post. Se conseguir achar alguma solução centralizada

de tratamento de erros para actionListeners e puder mandar seria de grande

valia.

17/09/13

Deixe uma resposta »

Implementando página de erro com JSF - Portal Arquiteto

Nome (origatório)

Comentário

Email (origatório)

Site

Links de Parceiros

Curso Java BH Curso java SE BH

Curso java SE BH Curso Java EE BH Descontos diversas Lojas Comentário da publicação Tweets Recentes

Comentário da publicação

Tweets Recentes

Encontre-nos no Facebook

Tweets Recentes Siga-nos no Twitter Encontre-nos no Facebook Portal do Arquiteto Curtir 100 pessoas curtiram Portal
Curtir
Curtir

100 pessoas curtiramPortal do Arquiteto.

Copyright © 2011 - Thinkworks Solutions. All rights reserved.

Voltar para o topo