J'ai une session Scoped Bean:haricot @SessionScoped géré recréée lors exception est gérée par PrimeExceptionHandler
@SessionScoped
public class UserSession {
User user;
}
Pendant mon LoginView, je jette un SecurityException:
throw new java.lang.SecurityException("You need to login!");
Qui sera redirigé par la web.xml
à SelectUserBean
Maintenant, voici la chose étrange que je ne comprends vraiment pas: Avant de lancer le SecurityException
, le UserSession
a l'ID [email protected]
et l'utilisateur Foo
. Maintenant dans le SelectUserBean
le UserSession
a un nouvel identifiant et l'utilisateur est null
.
dans mon faces-config
j'avais Primefaces la gestion des exceptions:
<el-resolver>
org.primefaces.application.exceptionhandler.PrimeExceptionHandlerELResolver
</el-resolver>
et
<factory>
<exception-handler-factory>
org.primefaces.application.exceptionhandler.PrimeExceptionHandlerFactory
</exception-handler-factory>
</factory>
après le retrait, cela fonctionne comme prévu. des idées à ce sujet?
Pourquoi cela se produit-il? Je pensais que puisque c'est un bean SessionScoped, il doit avoir la même valeur.