Les annotations de haricots comme @ManagedProperty et @postConstruct ne fonctionnent pas lorsqu'il instancie manuellement le haricot d'un autre haricot

StackOverflow https://stackoverflow.com/questions/8420217

Question

J'ai instancié une demande de haricot d'un autre haricot de demande,

new LoginManager();

Mais la propriété qui est annotée avec @ManagedProperty n'obtient pas la valeur de la référence demandée, uniquement en cas d'instanciation à travers la voie ci-dessus. Il contient juste null, provoquant le NPE plus tard dans le code. Aussi @PostConstruct ne sera pas invoqué. Pourquoi est-ce que et comment dois-je gérer cela?

@ManagedBean(name = "loginManager")
@RequestScoped
public class LoginManager {

    private String userid;
    private String password;

    @ManagedProperty(value="#{currentSession}")
    private UserSessionManager userSession;

}

Mais userSession Impossible de lire le haricot étiré de session lorsque ce haricot a été instancié en utilisant: new LoginManager();

Cependant, je peux lire la valeur en utilisant FacesContext!

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top