проблема внедрения Sessionscoped bean в управляемый bean - PullRequest
2 голосов
/ 07 апреля 2010

У меня есть бин Sessioned scoped

@SessionScoped
public class UserData implements Serializable {

private String uid;

public String getUid() {
    return uid;
}

public void setUid(final String uid) {
    this.uid = uid;
}

Я устанавливаю значение в компоненте SessionScoped в моем компоненте сеанса без состояния

public void setOperator(final Operator operator) {
    userData.setUid(operator.getId());
}

Когда я пытаюсь получить объект с помощью @Inject, я получаю только ноль

@ManagedBean(name = "RoleController")
@SessionScoped
public class RoleController {

...

@Inject
private UserData userData;

...

public UserData getUserData() {
    System.out.println("ID");
    System.out.println(userData.getUid());

У меня есть bean.xml

1 Ответ

4 голосов
/ 17 мая 2010

Заменить

@ManagedBean(name = "RoleController")

с

@Named("RoleController")

и убедитесь, что вы импортируете javax.enterprise.context.SessionScoped, а не javax.faces.bean.SessionScoped для обоих классов.

...