Hi Openjpa is excluded from this module so it shouldnt be found if you dont use another openejb module like openejb-cxf or cxf-rs which brings openjpa transitively.
To force hibernate set the system property javax.persistence.provider to hibernate provider Le 3 nov. 2013 09:04, "Matthias Wessendorf" <mat...@apache.org> a écrit : > On Sun, Nov 3, 2013 at 12:48 AM, John D. Ament <john.d.am...@gmail.com > >wrote: > > > Also, I believe this is expected behavior per EE specs. The container > may > > have a default provider, which an app can leverage. In containers like > > WebLogic, you can configure a different default but that requires > specific > > configuration. > > > > Maybe it's possible to configure OpenEJB/TomEE to have a default provider > > other than OpenJPA, but I'm not sure how you would package that. > > > > > No I was just wondering why it can not find the default (OpenJPA), where > there is no specific provider mentioned. ClassNotFoundException is a little > odd - and the behavior for 4.5.2 is also different (it finds the OpenJPA > impl there) > > -M > > > > > > > > On Sat, Nov 2, 2013 at 7:29 PM, Jean-Louis MONTEIRO <jeano...@gmail.com > > >wrote: > > > > > Hi Matthias, > > > > > > The openejb-core-hibernate is just a helper pom. > > > It aims at providing a easy way from an end user point of view to use > > > Hibernate as the JPA provider instead of OpenJPA by default. > > > > > > The pom just excludes OpenJPA and includes Hibernate. > > > If you wanna use OpenJPA, you have to use openejb-core instead of > > > openejb-core-hibernate. > > > > > > Hope it helps > > > JLouis > > > > > > > > > > > > 2013/11/3 Matthias Wessendorf <mat...@apache.org> > > > > > > > Hello! > > > > > > > > On trunk, when removing the <provider> element of the persistence.xml > > > ([1]) > > > > the openejb-core-hibernate module assumes that the OpenJPA impl. > should > > > be > > > > used. > > > > > > > > > > > > However, the test here fails, since it can not find the OpenJPA > > > > implementation; See stacktrace below. > > > > > > > > > > > > -Matthias > > > > > > > > [1] > > > > > > > > > > > > > > https://github.com/apache/tomee/blob/trunk/examples/jpa-hibernate/src/main/resources/META-INF/persistence.xml#L24 > > > > > > > > > > > > > > > > org.apache.openejb.OpenEjbContainer$AssembleApplicationException: > > > > org.apache.openejb.OpenEJBException: Creating application failed: > > > > /Users/matzew/TEMP/TomEE/examples/jpa-hibernate: > > > > org.apache.openejb.OpenEJBRuntimeException: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl > > > > at > > > > > > > > > > > > > > org.apache.openejb.OpenEjbContainer$Provider.createEJBContainer(OpenEjbContainer.java:419) > > > > at > > > > > > > > > > javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:56) > > > > at org.superbiz.injection.h3jpa.MoviesTest.test(MoviesTest.java:37) > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > > at > > > > > > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > > > at > > > > > > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > > at java.lang.reflect.Method.invoke(Method.java:601) > > > > at junit.framework.TestCase.runTest(TestCase.java:168) > > > > at junit.framework.TestCase.runBare(TestCase.java:134) > > > > at junit.framework.TestResult$1.protect(TestResult.java:110) > > > > at junit.framework.TestResult.runProtected(TestResult.java:128) > > > > at junit.framework.TestResult.run(TestResult.java:113) > > > > at junit.framework.TestCase.run(TestCase.java:124) > > > > at junit.framework.TestSuite.runTest(TestSuite.java:243) > > > > at junit.framework.TestSuite.run(TestSuite.java:238) > > > > at > > > > > > > > > > > > > > org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104) > > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > > at > > > > > > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > > > at > > > > > > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > > at java.lang.reflect.Method.invoke(Method.java:601) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:164) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:110) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:175) > > > > at > > > > > > > > > > > > > > org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcessWhenForked(SurefireStarter.java:107) > > > > at > > > > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:68) > > > > Caused by: org.apache.openejb.OpenEJBException: Creating application > > > > failed: /Users/matzew/TEMP/TomEE/examples/jpa-hibernate: > > > > org.apache.openejb.OpenEJBRuntimeException: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:897) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:612) > > > > at > > > > > > > > > > > > > > org.apache.openejb.OpenEjbContainer$Provider.createEJBContainer(OpenEjbContainer.java:415) > > > > ... 27 more > > > > Caused by: org.apache.openejb.OpenEJBException: > > > > org.apache.openejb.OpenEJBRuntimeException: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:758) > > > > ... 29 more > > > > Caused by: org.apache.openejb.OpenEJBRuntimeException: > > > > java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createDelegate(ReloadableEntityManagerFactory.java:117) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.<init>(ReloadableEntityManagerFactory.java:101) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.PersistenceBuilder.createEntityManagerFactory(PersistenceBuilder.java:150) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:752) > > > > ... 29 more > > > > Caused by: java.lang.ClassNotFoundException: > > > > org.apache.openjpa.persistence.PersistenceProviderImpl > > > > at java.net.URLClassLoader$1.run(URLClassLoader.java:366) > > > > at java.net.URLClassLoader$1.run(URLClassLoader.java:355) > > > > at java.security.AccessController.doPrivileged(Native Method) > > > > at java.net.URLClassLoader.findClass(URLClassLoader.java:354) > > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:423) > > > > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) > > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:356) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.EntityManagerFactoryCallable.call(EntityManagerFactoryCallable.java:47) > > > > at > > > > > > > > > > > > > > org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory.createDelegate(ReloadableEntityManagerFactory.java:115) > > > > ... 32 more > > > > > > > > > > > > -- > > > > Matthias Wessendorf > > > > > > > > blog: http://matthiaswessendorf.wordpress.com/ > > > > sessions: http://www.slideshare.net/mwessendorf > > > > twitter: http://twitter.com/mwessendorf > > > > > > > > > > > > > > > > -- > > > Jean-Louis > > > > > > > > > -- > Matthias Wessendorf > > blog: http://matthiaswessendorf.wordpress.com/ > sessions: http://www.slideshare.net/mwessendorf > twitter: http://twitter.com/mwessendorf >