Hibernate bug

Amennyiben van egy lekérdező képernyőnk, ahol meg lehet adni szűrési feltételeket, a lekérdezést dinamikusan összeállítva 2^n lehetséges lekérdezés állhat elő, a szűrési mezők kitöltésének megfelelően (ha a feltételt csak akkor konkatenáljuk hozzá, ha ki van töltve). A Csak a tesztemen keresztül blog bejegyzése szerint ezt megoldhatjuk egy lekérdezéssel is, ahol rövidzár kiértékelést használunk. Azaz minden mezőnél a lekérdezésbe beleírjuk a következő feltételt:

(:param IS NULL OR alias.someField = :param)

A probléma ebben az, hogy Hibernate 3.3.2 és Oracle adatbázis esetén van egy bug, amely miatt null érték esetén elszáll a következő hibával:

“ORA-00932: inconsistent datatypes: expected NUMBER got BINARY”

Megoldás, hogy null esetén “” String-et adunk át.