VRaptor InterceptionException

Bom dia pessoal,

Há algum tempo, venho enfrentando problemas com o Interceptador do VRaptor. Não uso @Intercepts em lugar nenhum. Mesmo assim o VRaptor está interceptando algumas exceções que eu gostaria que fossem tratadas no web.xml.

Segue parte do meu web.xml

<error-page>
   <exception-type>org.apache.shiro.authz.AuthorizationException</exception-type>
   <location>/WEB-INF/jsp/erro/acessonegado.jsp</location>
</error-page>
<error-page>
   <exception-type>org.apache.shiro.authc.AuthenticationException</exception-type>
   <location>/WEB-INF/jsp/template/toindex.jsp</location>
</error-page>

Mas quando ocorre qualquer uma das duas exceções listadas acima, acontece essa exceção e a aplicação retorna erro 500:

 br.com.caelum.vraptor.InterceptionException: org.apache.shiro.authc.AuthenticationException:

Como evitar esse problema?
Estou usando VRaptor 4 (4.2.0-RC3).

Valeu pessoal.

Você configurou o filter-mapping? ex:

<filter-mapping>
  <filter-name>shiroFilter</filter-name>
  <url-pattern>/*</url-pattern>
  <dispatcher>REQUEST</dispatcher>
  <dispatcher>ERROR</dispatcher>
  <dispatcher>FORWARD</dispatcher>
  <dispatcher>INCLUDE</dispatcher>
 </filter-mapping>

Bom, o mais legal no Vraptor é que você pode especializar (@Specializes) e sobreescrever praticamente qualquer comportamento do framework, então você poderia criar uma CustomExceptionHandlerInterceptor que extend a ExceptionHandlerInterceptor e tratar da forma que deseja.

Veja exemplo: CustomExceptionHandlerInterceptor

Muito obrigado @aix,

Com o exemplo mostrado, consegui resolver o problema. Funcionou muito bem.

Não havia feito a configuração do filter-mapping do Shiro. Vou tentar por essa via também e posto o resultado.

Mais uma vez, obrigado.