JSF - Obtenir le SessionScoped exemple d'Haricot

J'ai cette configuration sur mon application web. 2 fèves :

1° Bean - Il vérifie la connexion;

@ManagedBean(name="login")
@SessionScoped
public class Login {
    private String nickname;
    private String password;
    private boolean isLogged;

    public String getNickname() { return nickname; }
    public void setNickname(String newValue) { nickname=newValue; }

    public String getPassword() { return password; }
    public void setPassword(String newValue) { password=newValue; }

    public void checkLogin() {
        ... i check on db the nickname and the password ...

        if(USER EXIST) {
            isLogged=true;
        } else {
            isLogged=false;
        }

        return true;
    }
}

2° Bean - Gérer les paramètres Utilisateur :

@ManagedBean(name="user")
@SessionScoped
public class User {
    private String name;
    private String surname;
    private String mail;

    public User() {
        String[] record=null;
        Database mydb=Configuration.getDatabase();
        mydb.connetti();
        ArrayList<String[]> db_result=null;
        db_result=mydb.selectQuery("SELECT name, surname, mail, domicilio FROM users WHERE nickname='???????'");

        int i = 0;
        while (i<db_result.size() ) {
           record=(String[]) db_result.get(i);
           i++;
        }
    }

    ... getter and setter methods...
}

Comme vous pouvez le voir, je voudrais savoir comment obtenir le surnom programmés précédemment sur mon login bean, afin que je puisse faire la requête sur ma DB.

En fait j'ai besoin pour obtenir l'instance de l'actuelle session bean login : comment puis-je l'obtenir? Je dois utiliser des choses comme session.getBean("login") 🙂

Espère que cette question est claire 🙂

OriginalL'auteur markzzz | 2010-11-25