If jpa native query returns a custom db type (such as postgres "tsvector"), the jdbc type is OTHER(1111). To correctly map the result, a custom type class must be provided to SQLQuery.addScalar(String columnAlias, Type type). Without the above scalar type registration, query fails with a "org.hibernate.MappingException: No Dialect mapping for JDBC type: 1111", even if the custom type was registered in dialect via TypeContributions.contributeType. It would be nice if the custom type was registered with a sql type (OTHER in this case), to check the PGObject and try to match a custom registered type. This issue affets QueryDSL native jpa query functionality, as it internally uses SQLQuery.addScalar(String columnAlias), without any knowledge of the hibernate custom type. |