在辅助bean(SEAM)中启用hibernate过滤器

时间:2012-02-27 09:35:57

标签: java hibernate jboss seam

我是Hibernate和SEAM的新手并且努力为获取的集合启用软删除过滤器,我已经设置了过滤器ok,但是我似乎无法根据文档调用enableFilter()调用{ {3}},我在支持bean和包含查询的DAO中尝试了以下代码,但两次都得到Null指针异常,下面的示例显示了我在辅助bean中尝试做的事情......

import org.hibernate.Session;

@Stateful
@Name("competitionActions")
@Restrict("#{identity.isLoggedIn()}")
public class CompetitonActionsBean implements CompettionActions, Serializable {

    /**
    * 
    */
   private static final long serialVersionUID = 1L;
   private Session session;

   @Override
   @Create
   @Begin(join=true)
   public void create(){
       session.enableFilter("deletedFilter");
       comps = competitionDAO.findCompetitionsForUser(user);
   }

有谁可以指出我哪里出错?

1 个答案:

答案 0 :(得分:1)

如果这是一个完整的代码示例,我会说session为空。您已定义private Session session,但从未给出值。如果您将其配置为Seam管理的Hiberate会话,则可以执行以下操作:

@In
private Session session;

有关详细信息,请参阅http://docs.jboss.org/seam/2.2.0.GA/reference/en-US/html/persistence.html#d0e7410