I am trying to learn jpa multitenant on java ee 7. I am following this tutorial.
https://developers.redhat.com/blog/2020/06/15/jakarta-ee-multitenancy-with-jpa-on-wildfly-part-1/
But I am getting below error:
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
at java.lang.Thread.run(Thread.java:748)
Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown from bean
at com.sun.ejb.containers.EJBContainerTransactionManager.checkExceptionClientTx(EJBContainerTransactionManager.java:662)
at com.sun.ejb.containers.EJBContainerTransactionManager.postInvokeTx(EJBContainerTransactionManager.java:507)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4566)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2074)
... 125 more
Caused by: java.lang.ClassCastException: com.sun.enterprise.container.common.impl.EntityManagerFactoryWrapper cannot be cast to org.hibernate.jpa.internal.EntityManagerFactoryImpl
at net.rhuanrocha.dao.Dao.getEntityManager(Dao.java:21)
at net.rhuanrocha.dao.JobDao.findAll(JobDao.java:13)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Inside Dao.java -> getEntityManager()
My Maven dependencies are as below:
- javax javaee-web-api 7.0 provided
- org.hibernate hibernate-entitymanager 5.0.7.Final jar
I am using Glassfish 4.1 as server and JDK 8. The imports are as below:
- import org.hibernate.engine.spi.SessionFactoryImplementor;
- import org.hibernate.jpa.internal.EntityManagerFactoryImpl;
- import javax.persistence.EntityManagerFactory;
- import javax.persistence.PersistenceUnit;
- import javax.persistence.EntityManager;