2012-01-05 8 views
13

Czy możesz mi pomóc? Wystąpił błąd podczas sprawdzania wartości logicznej "r.isDefault = true".HQL: używanie Boolean w nazwanych zapytaniach

W moim HQL kwerendy o nazwie:

<named-query name="RptQuery.queryDefaultByCode"> 
    <query> 
     SELECT r FROM RptQuery r WHERE r.code = ?1 AND r.isDefault = true 
    </query> 
</named-query> 

dostaję błąd: Spowodowany przez: org.hibernate.HibernateException: Błędy w nazwie zapytaniami: RptQuery.queryDefaultByCode

W moim persistence.xml:

<property name="hibernate.query.substitutions" value="true='Y', false='N', yes='Y', no='N'"/> 

W moim POJO:

private boolean isDefault; 

@Column(name = "CPMN_IS_DEFLT", length = 1) 
@Type(type = "yes_no") 
public boolean isDefault() { 
    return this.isDefault; 
} 

public void setDefault(boolean isDefault) { 
    this.isDefault = isDefault; 
} 

Z góry dziękujemy!

Odpowiedź: Wystarczy znaleźć drobny błąd:

r.isDefault = true 

powinny być

r.default = true 

Dzięki.

Odpowiedz