Как @Nikolay дал подсказку в комментарии.
Результат собственного запроса не преобразуется автоматически в сущность, вы должны сделать это вручную или определить сопоставления с помощью @SqlResultSetMapping и @ ColumnResult.
, чтобы заставить это работать, следуйте приведенному ниже коду.
@Entity
@Configurable
@SqlResultSetMapping(name = "someName", entities = @EntityResult(entityClass = SamplePojo.class), columns = @ColumnResult(name = "columnName"))
public class SamplePojo{
//fields and getters/setters
}
и затем в запросе
List<SamplePojo> list = entityManager().createNativeQuery("Select ......", "someName").getResultList();
Примечание: someName
должно быть одинаковым в обоих местах.
См. этот вопрос