0

我有一个问题,每当我在个人资料页面getStatusList()上第三次打电话时,都会给我. 我认为无法从中获取 User 对象,我错过了什么。如果有人能指出我的错误,我将不胜感激。Lazy loaderuser1.getEmail()nullpointer exceptionuser1frienddet

public List<Status> getStatusList() {
        EntityManager em;
        EntityManagerFactory emf = Persistence
                .createEntityManagerFactory("FreeBird");
        em = emf.createEntityManager();

        FacesContext context = FacesContext.getCurrentInstance();
        HttpSession session = (HttpSession) context.getExternalContext().getSession(true);
        User user1 = (User) session.getAttribute("frienddet");
            System.out.println(user1.getEmail());
        // some codes


    }

编辑

事实证明,frienddetgetStatusList()

4

1 回答 1

1

您的调用session.getAttribute("frienddet")返回 null 因为"frienddet"未初始化(我的猜测,它可能被初始化为 null)。

查看您的代码,您实际上并没有使用实体管理器(我假设这在下面省略的代码中)。因此,您需要查看在"frienddet"您的会话中放置的位置,并找出为什么它在那里为空。如果您跳入调试器(我真的会推荐),您应该会看到您的会话对象缺少键/值对或空键。

于 2013-07-13T14:27:54.783 回答