Текущий менеджер bean не найден в сервисе CDI в websphere 9 - PullRequest
0 голосов
/ 03 сентября 2018

Я мигрирую с WAS 8 на WAS 9. мое приложение использует версию Hibernate 4.3.0.Beta3 и версию 4.0.3. Во время запуска приложения я получаю эту ошибку:

An error occurred in the org.hibernate.jpa.HibernatePersistenceProvider persistence
    provider when it attempted to create the container entity manager factory for 
    the AccidentCompensation persistence unit. The following error occurred: 
java.lang.IllegalStateException: java.lang.UnsupportedOperationException: 
    No current bean manager found in CDI service
    at com.ibm.ws.jpa.cdi.impl.BeanManagerInvocationHandler.invoke(BeanManagerInvocationHandler.java:80)

Пожалуйста, дайте мне знать, если вам нужно больше информации.

1 Ответ

0 голосов
/ 04 декабря 2018

Я решаю свою проблему, пишу собственный построитель сеансов и отключаю ссылку на beanreference из экземпляра фабрики.

    package br.com.temasistemas.utils.hibernate;

import org.hibernate.boot.SessionFactoryBuilder;
import org.hibernate.boot.spi.MetadataImplementor;
import org.hibernate.boot.spi.SessionFactoryBuilderFactory;
import org.hibernate.boot.spi.SessionFactoryBuilderImplementor;

public class CustomSessionFactoryBuilderFactory implements SessionFactoryBuilderFactory {

    @Override
    public SessionFactoryBuilder getSessionFactoryBuilder(final MetadataImplementor metadata,
            final SessionFactoryBuilderImplementor defaultBuilder) {
        return defaultBuilder.applyBeanManager(null);
    }

}

create a service file in 

META-INF/services/org.hibernate.boot.spi.SessionFactoryBuilderFactory

content

br.com.temasistemas.utils.hibernate.CustomSessionFactoryBuilderFactory
...