Marcel
Marcel

Reputation: 3288

Hibernate error when I use @Formula annotation

I have an entity and all my SELECTs are working fine.

But now I'm trying to use @Formula

@Formula("(SELECT DESFILIAL FROM SESC.DAFILIAL WHERE CODFILIAL = 2 FETCH FIRST 1 ROWS ONLY)")
private String desfilial;

And that's causing an error on Hibernate:

java.lang.NullPointerException
    at org.hibernate.loader.DefaultEntityAliases.intern(DefaultEntityAliases.java:193)
    at org.hibernate.loader.DefaultEntityAliases.getSuffixedPropertyAliases(DefaultEntityAliases.java:151)
    at org.hibernate.loader.DefaultEntityAliases.determinePropertyAliases(DefaultEntityAliases.java:93)
    at org.hibernate.loader.DefaultEntityAliases.<init>(DefaultEntityAliases.java:65)
    at org.hibernate.loader.ColumnEntityAliases.<init>(ColumnEntityAliases.java:43)
    at org.hibernate.loader.custom.sql.SQLQueryReturnProcessor.generateCustomReturns(SQLQueryReturnProcessor.java:198)
    at org.hibernate.loader.custom.sql.SQLCustomQuery.<init>(SQLCustomQuery.java:152)
    at org.hibernate.engine.query.spi.NativeSQLQueryPlan.<init>(NativeSQLQueryPlan.java:67)
    at org.hibernate.engine.query.spi.QueryPlanCache.getNativeSQLQueryPlan(QueryPlanCache.java:155)
    at org.hibernate.internal.AbstractSessionImpl.getNativeSQLQueryPlan(AbstractSessionImpl.java:219)
    at org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:225)
    at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:156)
    at org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:890)

I already saw that problem on some forums, but any solution. Does anyone know why @Formula is causing that?

Upvotes: 1

Views: 983

Answers (1)

Jeremy
Jeremy

Reputation: 336

What version of Hibernate are you using? There is this link to a known bug with @Formula causing a NullPointerException.

https://hibernate.atlassian.net/browse/HHH-7525

Upvotes: 5

Related Questions