2010-04-01 85 views
1

我定义一个Hibernate过滤器指定如下默认条件:默认条件

<filter-def name="IsDeletedFilter" condition="IsDeleted = 'false'" /> 

在我的实体映射,我喜欢这个过滤器相关联:

<filter name="IsDeletedFilter" /> 

根据到documentation,过滤器应该应用这种方式使用时的默认条件。但是,当我尝试这样做时,Hibernate在尝试解析实体映射时抛出NullPointerException。堆栈跟踪显示这一点:

产生的原因:在org.hibernate.cfg.HbmBinder.parseFilter显示java.lang.NullPointerException (HbmBinder.java:2957)

但是,如果我指定直接在实体映射的条件是这样的:

<filter name="IsDeletedFilter2" condition="IsDeleted = 'false'"/> 

它工作正常,数据正在过滤正确。

什么是使用的默认情况下正确的方法是什么?

回答