I have got a bit of a problem using JPA NamedQuery in combination with an AttributeConverter.
So basically, I have got an Entity with a field xyz of type XYZ, that is converted using AttributeConverter<XYZ, String>
, so the value is stored as a VARCHAR in the database. This works nicely. But I'm not quite sure about how to query for Entity.xyz using a NamedQuery:
@NamedQuery(name="Entity.testQuery", query="SELECT e FROM Entity e WHERE e.xyz=:xyz
If I try it in this way, Hibernate crashes during startup. So that can't be right. Is there any way to tell Hibernate to compare the "unconverted" (i.e. String) value like WHERE e.xyz=:xyzAsString
?
Best regards Jonas
EDIT: Hibernate crashes, I think, because it tries to query e.xyz as a JOIN with entity XYZ which doesn't exist. So maybe, this is a bug (I'm on WildFly 9.2, which uses Hibernate 4.3)
After adding some changes in other places, the problem no longer occurs. So my conclusion, that it is related to a converted attribute as parameter seems to be wrong.
Thanks nonetheless