如何从注入的实例获取更新的值

时间:2016-02-21 19:18:04

标签: java-ee cdi weld

命名bean listProjects需要容器提供的身份验证。我想从命名的log​​inMBean获取用户名并在listProjects bean中使用它。

我已将身份验证bean注入listProjects,但是当我访问用户名时,即使用户已经过身份验证,它也会为null。

@Named("loginMBean")
@SessionScoped
@PermitAll
public class LoginMBean implements Serializable {
private String username;

public String getUsername() {
    return username;
} 



@Named
@SessionScoped
@RolesAllowed({"Users"})
public class ListProjectsMBean implements Serializable {
@Inject
private LoginMBean wLoginMBean;

public void getList(ActionEvent actionEvent) {
        String testUserName = wLoginMBean.getUsername();
  l     
}

野生蝇8.2 焊缝2.2 java 1.7

1 个答案:

答案 0 :(得分:0)

注入正常,可能没有设置用户名,因为它为null。

尝试在ListProjectsMBean中注入主体以查看身份验证是否成功。

@Inject Principal principal;