JPA 2 Native Query производит Nullpointer - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь обновить hibernate / jpa в одном из моих проектов и у меня происходит сбой нескольких тестов из-за некоторых собственных запросов.

Например, один собственный запрос выглядит примерно так:

Query query = this.entityManager.createNativeQuery(
                "select distinct c.* from company where ...."
                Company.class);

, который создает исключение NullpointerException в org.hibernate.internal.AbstractSharedSessionContract # handleNativeQueryResult, именно в этот момент:

} else if ( this.getFactory().getMetamodel().getEntities()
                .stream()
                .anyMatch( entityType -> entityType.getJavaType().isAssignableFrom( resultClass ) ) ) {
            query.addEntity( "alias1", resultClass.getName(), LockMode.READ );
        }

getEntities(), кажется, включает в себя представления всех таблиц, а не только "реальных"'сущности, но также n-to-m таблицы и таблицы истории (envers).Эти таблицы n-to-m или envers не имеют представления JavaType (javaType имеет значение null), что заставляет entityType.getJavaType().isAssignableFrom создавать исключение NullPointerException.

Как я могу исправить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...