java - 在支持 bean (SEAM) 中启用 hibernate 过滤器

标签 java hibernate jboss seam

我是 Hibernate 和 SEAM 的新手,正在努力为获取的集合上的软删除启用过滤器,我已经设置了过滤器,但是我似乎无法按照文档 here 调用 enableFilter() 调用,我在支持 bean 以及包含查询的 DAO 中尝试了以下代码,但两次都得到空指针异常,下面的示例显示了我在支持 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);
   }

谁能指出我哪里出错了?

最佳答案

如果这是一个完整的代码示例,我会说 session 为空。您定义了私有(private) session ,但从未给它赋值。如果您将其配置为 Seam 管理的 Hiberate session ,您可以执行以下操作:

@In
private Session session;

参见http://docs.jboss.org/seam/2.2.0.GA/reference/en-US/html/persistence.html#d0e7410了解更多详情。

关于java - 在支持 bean (SEAM) 中启用 hibernate 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9462778/

相关文章:

java - 在Java中创建没有构造函数的子类实例

java - 如何从删除中转换通用类型

java - 如何创建 RHQ 插件?

java - 如何使用 Java/Spring 将视频流式传输到浏览器?

java - 如何从 ArrayList 中删除特定元素?

java - Shiro 中的纯密码和加密密码不匹配

java - 为什么 session 之外的 Hibernate 实体应该实现 equals() 和 hashcode() ?

java - Hibernate CriteriaBuilder 为以驼峰命名法编写的属性生成无效查询

java - 如何在 Hibernate ORM 中将 "lo"别名为 "oid"?

java - jboss 不使用 logback 进行日志记录