Hibernate дает исключение NullPointerException для query.list () - PullRequest
0 голосов
/ 21 марта 2019

Я использую тип транзакции JTA в своем постоянном XML из трассировки стека. Похоже, что hibernate пытается освободить соединение при возникновении NPE?

есть идеи, почему это вызывает проблему, это ошибка гибернации?

Вот трассировка стека:

Caused by: java.lang.NullPointerException
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.closeConnection(DatasourceConnectionProviderImpl.java:127)
    at org.hibernate.internal.AbstractSessionImpl$NonContextualJdbcConnectionAccess.releaseConnection(AbstractSessionImpl.java:397)
    at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.releaseConnection(LogicalConnectionManagedImpl.java:169)
    at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.afterStatement(LogicalConnectionManagedImpl.java:122)
    at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.afterStatementExecution(JdbcCoordinatorImpl.java:287)
    at org.hibernate.loader.Loader.doQuery(Loader.java:948)
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:342)
    at org.hibernate.loader.Loader.doList(Loader.java:2622)
    at org.hibernate.loader.Loader.doList(Loader.java:2605)
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2434)
    at org.hibernate.loader.Loader.list(Loader.java:2429)
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:501)
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:370)
    at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:216)
    at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1339)
    at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)
    at com.abc.app.bha.dataaccess.dao.quote.HibernateQuoteDAO.getNumberOfLives(HibernateQuoteDAO.java:164)
    at com.abc.app.bha.appservice.manager.QuoteManager.getNumberOfLives(QuoteManager.java:328)
    at com.abc.app.bha.appservice.manager.QuoteManager.getProductCategoryDetails(QuoteManager.java:448)
    at com.abc.app.bha.appservice.ejb.GroupRiskServiceBean.getProductCategoryDetails(GroupRiskServiceBean.java:166)
    at sun.reflect.GeneratedMethodAccessor447.invoke(Unknown Source)

это метод, в котором я вызываюметод list ()

public List getNumberOfLives(Long objQuoteId) {

        List toReturn = null;
        try {
            Query locQuery = this.getHibernateSession().createQuery(
                    HQL_NUM_LIVES);
            locQuery.setParameter("quoteId", objQuoteId);
            toReturn = locQuery.list();
        } catch (HibernateException hbnExp) {
            Util.error(LOG, hbnExp);
            throw new DataAccessException(hbnExp);
        }


        return toReturn;
    }
...