Tratar ViewExpiredException

457 views
Skip to first unread message

Erenildo

unread,
Jan 10, 2011, 10:56:37 AM1/10/11
to javasf: JavaServer Faces Group
Boa tarde,

Estou com um problema ao tratar a sessão quando expirada, pois não
esta indo para a pagina que eu configurei no web.xml.Dae quando a
sessão expira ao inves de ir para a página correta explode o erro na
tela:

javax.faces.application.ViewExpiredException: viewId:/index.jsp -
View /principal.jsp could not be restored.

com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:
187)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)

org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:
366)
org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)

org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:
96)

No web.xml configurei assim:
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</
exception-type>
<location>/principal.jsp</location>
</error-page>

Desde já agradeço.

Lessandro Notaroberto Pyrâmides

unread,
Jan 10, 2011, 11:59:01 AM1/10/11
to jav...@googlegroups.com
Olá Erenildo, boa tarde.
Dê uma olhada no meu blog, que tratei essa questão, tive os mesmos problemas
que você.
http://semprejava.wordpress.com
Abs,
Lessandro

-----Mensagem original-----
De: jav...@googlegroups.com [mailto:jav...@googlegroups.com] Em nome de
Erenildo
Enviada em: segunda-feira, 10 de janeiro de 2011 13:57
Para: javasf: JavaServer Faces Group
Assunto: [javasf] Tratar ViewExpiredException

Boa tarde,

Desde já agradeço.

--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf

Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil

Erenildo Rios

unread,
Jan 10, 2011, 11:04:18 AM1/10/11
to jav...@googlegroups.com
Lessandro,

Obrigado vou dar uma olhada.

at+.
--
at+.
-------------------------------------------------
Erenildo Rios
UCAM/Campos
Analista de Sistemas

Sávio Canuto

unread,
Jan 10, 2011, 11:12:34 AM1/10/11
to jav...@googlegroups.com
Esse problema eu resolvi criando uma página específica para esse erro, e declarando isso no web.xml:

    <error-page>
        <exception-type>javax.faces.application.ViewExpiredException</exception-type>
        <location>/view/erros/SessaoExpirada.jsf</location>
    </error-page>

dentro da página SessaoExpirada.xhtml, tem um botão que redireciona para a página de login novamente.

Atenciosamente,

Sávio Canuto de Oliveira Sousa
João Pessoa - Paraíba - Brasil
------------------------------------------------------
Skype - savio.canuto
MSN - savio...@hotmail.com

Lessandro Notaroberto Pyrâmides

unread,
Jan 10, 2011, 12:49:41 PM1/10/11
to jav...@googlegroups.com

Olá amigo... Na teoria isso até deveria funcionar. No meu caso não funcionou.

Por isso indiquei ao amigo um artigo para ele dar uma olhada e aplicar.

Comigo ao tentar redirecionar para essa página de sessão expirada, o sistema

não conseguia, justamente pelo fato de não existir mais sessão.

Eu estava utilizando JSF 2.0 com PrimeFaces, então ele têm uma outra forma

de implementação.

Abs,

Lessandro

Erenildo Rios

unread,
Jan 10, 2011, 12:08:45 PM1/10/11
to jav...@googlegroups.com
Boa tarde,

Comigo tb não funcionou dessa forma.

at+.

Rafael Pestano

unread,
Jan 10, 2011, 12:19:21 PM1/10/11
to jav...@googlegroups.com
Boa tarde,

Se estão tentando redirecionar após uma chamada ajax sugiro este tópico: http://primefaces.prime.com.tr/forum/viewtopic.php?f=3&t=2631&start=10

Abraços.
 
Att,

--

Rafael Mauricio Pestano

Graduando em Ciência da Computação
UFRGS



De: Lessandro Notaroberto Pyrâmides <lessandron...@gmail.com>
Para: jav...@googlegroups.com
Enviadas: Segunda-feira, 10 de Janeiro de 2011 15:49:41
Assunto: RES: [javasf] Tratar ViewExpiredException

Rômulo Augusto

unread,
Jan 10, 2011, 1:55:54 PM1/10/11
to jav...@googlegroups.com
Usando JSF 1.2 e Facelets resolvi desta forma: http://www.pontonulo.com/desenvolvimento/viewexpiredexception-e-jsf-1-2-solucao-definitiva.html



-------------------------------------------------------------------
Rômulo Augusto
JRimum Developer
www.jrimum.org
P Antes de imprimir, pense em seu compromisso com o meio ambiente
Reply all
Reply to author
Forward
0 new messages