You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Bo Gao <el...@gmail.com> on 2011/12/16 10:50:39 UTC

PageTester can't init JPAModule when run mvn test

Hi,
How can I test my services using TestNG?

I use PageTester to start tapestry and call getService to get my service instance.
This works when I run in a main function.

But I write some test class use TestNG, when I call mvn test in shell.
I get the following Exceptions.

"No PersistenceProvider implementation available in the runtime environment."


--
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: Operations trace:
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 1] Realizing service RegistryStartup
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 2] Instantiating service RegistryStartup implementation via org.apache.tapestry5.ioc.internal.services.RegistryStartup(Logger, List) (at RegistryStartup.java:36) via org.apache.tapestry5.ioc.services.TapestryIOCModule.bind(ServiceBinder) (at TapestryIOCModule.java:49)
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 3] Creating plan to instantiate org.apache.tapestry5.ioc.internal.services.RegistryStartup via public org.apache.tapestry5.ioc.internal.services.RegistryStartup(org.slf4j.Logger,java.util.List)
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 4] Determining injection value for parameter #2 (java.util.List)
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 5] Collecting ordered configuration for service RegistryStartup
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
SEVERE: [ 6] Invoking org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean) (at JpaModule.java:183)
Dec 16, 2011 5:29:46 PM org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper createObject
SEVERE: Construction of service RegistryStartup failed: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
org.apache.tapestry5.ioc.internal.OperationException: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
	at org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:219)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:49)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$2.invoke(InternalUtils.java:260)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:264)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1459)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1454)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1451)
	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
	at org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
	at org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
	at org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
	at org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
	at org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
	at $Runnable_125fe4414e8b18bb.delegate(Unknown Source)
	at $Runnable_125fe4414e8b18bb.run(Unknown Source)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
	at org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
	at org.apache.tapestry5.test.PageTester.<init>(PageTester.java:118)
	at com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:34)
	at com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:44)
	at org.iminer.test.AbstractIminerTest.<clinit>(AbstractIminerTest.java:15)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:28)
	at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:372)
	at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:284)
	at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:109)
	at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:181)
	at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
	at org.testng.TestRunner.initMethods(TestRunner.java:402)
	at org.testng.TestRunner.init(TestRunner.java:228)
	at org.testng.TestRunner.init(TestRunner.java:198)
	at org.testng.TestRunner.<init>(TestRunner.java:147)
	at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:525)
	at org.testng.SuiteRunner.init(SuiteRunner.java:156)
	at org.testng.SuiteRunner.<init>(SuiteRunner.java:110)
	at org.testng.TestNG.createSuiteRunner(TestNG.java:1235)
	at org.testng.TestNG.createSuiteRunners(TestNG.java:1222)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1074)
	at org.testng.TestNG.run(TestNG.java:999)
	at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:60)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeMulti(TestNGDirectoryTestSuite.java:153)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:99)
	at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:111)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
	at $Proxy0.invoke(Unknown Source)
	at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
	at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
Caused by: java.lang.RuntimeException: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
	at org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	... 88 more
Caused by: java.lang.IllegalStateException: No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getPersistenceProvider(EntityManagerSourceImpl.java:221)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.createEntityManagerFactory(EntityManagerSourceImpl.java:195)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getEntityManagerFactory(EntityManagerSourceImpl.java:185)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.create(EntityManagerSourceImpl.java:229)
	at $EntityManagerSource_125fe4414e8b18be.create(Unknown Source)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getOrCreateEntityManager(EntityManagerManagerImpl.java:78)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.createAllEntityManagers(EntityManagerManagerImpl.java:68)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getEntityManagers(EntityManagerManagerImpl.java:59)
	at $EntityManagerManager_125fe4414e8b18bd.getEntityManagers(Unknown Source)
	at $EntityManagerManager_125fe4414e8b18bc.getEntityManagers(Unknown Source)
	at org.apache.tapestry5.jpa.JpaModule.startupEarly(JpaModule.java:186)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
	... 93 more
java.lang.reflect.UndeclaredThrowableException
	at $Proxy0.invoke(Unknown Source)
	at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
	at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
	... 4 more
Caused by: org.testng.TestNGException: 
An error occurred while instantiating class org.iminer.test.user.service.TestUserService: null
	at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:383)
	at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:284)
	at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:109)
	at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:181)
	at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
	at org.testng.TestRunner.initMethods(TestRunner.java:402)
	at org.testng.TestRunner.init(TestRunner.java:228)
	at org.testng.TestRunner.init(TestRunner.java:198)
	at org.testng.TestRunner.<init>(TestRunner.java:147)
	at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:525)
	at org.testng.SuiteRunner.init(SuiteRunner.java:156)
	at org.testng.SuiteRunner.<init>(SuiteRunner.java:110)
	at org.testng.TestNG.createSuiteRunner(TestNG.java:1235)
	at org.testng.TestNG.createSuiteRunners(TestNG.java:1222)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1074)
	at org.testng.TestNG.run(TestNG.java:999)
	at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:60)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeMulti(TestNGDirectoryTestSuite.java:153)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:99)
	at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:111)
	... 9 more
Caused by: java.lang.ExceptionInInitializerError
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:28)
	at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:372)
	... 28 more
Caused by: java.lang.RuntimeException: Exception constructing service 'RegistryStartup': Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:75)
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
	at $Runnable_125fe4414e8b18bb.delegate(Unknown Source)
	at $Runnable_125fe4414e8b18bb.run(Unknown Source)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
	at org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
	at org.apache.tapestry5.test.PageTester.<init>(PageTester.java:118)
	at com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:34)
	at com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:44)
	at org.iminer.test.AbstractIminerTest.<clinit>(AbstractIminerTest.java:15)
	... 34 more
Caused by: org.apache.tapestry5.ioc.internal.OperationException: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
	at org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
	at org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:219)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:49)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$2.invoke(InternalUtils.java:260)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:264)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1459)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1454)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1451)
	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
	at org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
	at org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
	at org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
	at org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
	at org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
	at org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
	... 43 more
Caused by: java.lang.RuntimeException: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
	at org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	... 88 more
Caused by: java.lang.IllegalStateException: No PersistenceProvider implementation available in the runtime environment.
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getPersistenceProvider(EntityManagerSourceImpl.java:221)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.createEntityManagerFactory(EntityManagerSourceImpl.java:195)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getEntityManagerFactory(EntityManagerSourceImpl.java:185)
	at org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.create(EntityManagerSourceImpl.java:229)
	at $EntityManagerSource_125fe4414e8b18be.create(Unknown Source)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getOrCreateEntityManager(EntityManagerManagerImpl.java:78)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.createAllEntityManagers(EntityManagerManagerImpl.java:68)
	at org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getEntityManagers(EntityManagerManagerImpl.java:59)
	at $EntityManagerManager_125fe4414e8b18bd.getEntityManagers(Unknown Source)
	at $EntityManagerManager_125fe4414e8b18bc.getEntityManagers(Unknown Source)
	at org.apache.tapestry5.jpa.JpaModule.startupEarly(JpaModule.java:186)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
	... 93 more

--
Bo Gao
elivoa@gmail.com







---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: PageTester can't init JPAModule when run mvn test

Posted by Igor Drobiazko <ig...@gmail.com>.
The message "No PersistenceProvider implementation available in the runtime
environment." means that no JPA implementor like EclipseLink is not
available on the classpath.

On Fri, Dec 16, 2011 at 10:50 AM, Bo Gao <el...@gmail.com> wrote:

> Hi,
> How can I test my services using TestNG?
>
> I use PageTester to start tapestry and call getService to get my service
> instance.
> This works when I run in a main function.
>
> But I write some test class use TestNG, when I call mvn test in shell.
> I get the following Exceptions.
>
> "No PersistenceProvider implementation available in the runtime
> environment."
>
>
> --
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: Error invoking service contribution method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: Operations trace:
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 1] Realizing service RegistryStartup
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 2] Instantiating service RegistryStartup implementation via
> org.apache.tapestry5.ioc.internal.services.RegistryStartup(Logger, List)
> (at RegistryStartup.java:36) via
> org.apache.tapestry5.ioc.services.TapestryIOCModule.bind(ServiceBinder) (at
> TapestryIOCModule.java:49)
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 3] Creating plan to instantiate
> org.apache.tapestry5.ioc.internal.services.RegistryStartup via public
> org.apache.tapestry5.ioc.internal.services.RegistryStartup(org.slf4j.Logger,java.util.List)
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 4] Determining injection value for parameter #2 (java.util.List)
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 5] Collecting ordered configuration for service RegistryStartup
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl log
> SEVERE: [ 6] Invoking
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean) (at JpaModule.java:183)
> Dec 16, 2011 5:29:46 PM
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper
> createObject
> SEVERE: Construction of service RegistryStartup failed: Error invoking
> service contribution method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
> org.apache.tapestry5.ioc.internal.OperationException: Error invoking
> service contribution method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
>        at
> org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:219)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:49)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$2.invoke(InternalUtils.java:260)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:264)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1459)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1454)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1451)
>        at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>        at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>        at
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>        at
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>        at
> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
>        at
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
>        at
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>        at $Runnable_125fe4414e8b18bb.delegate(Unknown Source)
>        at $Runnable_125fe4414e8b18bb.run(Unknown Source)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>        at
> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>        at org.apache.tapestry5.test.PageTester.<init>(PageTester.java:118)
>        at
> com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:34)
>        at
> com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:44)
>        at
> org.iminer.test.AbstractIminerTest.<clinit>(AbstractIminerTest.java:15)
>        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>        at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>        at
> org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:28)
>        at
> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:372)
>        at
> org.testng.internal.ClassHelper.createInstance(ClassHelper.java:284)
>        at
> org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:109)
>        at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:181)
>        at
> org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
>        at org.testng.TestRunner.initMethods(TestRunner.java:402)
>        at org.testng.TestRunner.init(TestRunner.java:228)
>        at org.testng.TestRunner.init(TestRunner.java:198)
>        at org.testng.TestRunner.<init>(TestRunner.java:147)
>        at
> org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:525)
>        at org.testng.SuiteRunner.init(SuiteRunner.java:156)
>        at org.testng.SuiteRunner.<init>(SuiteRunner.java:110)
>        at org.testng.TestNG.createSuiteRunner(TestNG.java:1235)
>        at org.testng.TestNG.createSuiteRunners(TestNG.java:1222)
>        at org.testng.TestNG.runSuitesLocally(TestNG.java:1074)
>        at org.testng.TestNG.run(TestNG.java:999)
>        at
> org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:60)
>        at
> org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeMulti(TestNGDirectoryTestSuite.java:153)
>        at
> org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:99)
>        at
> org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:111)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
>        at $Proxy0.invoke(Unknown Source)
>        at
> org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
>        at
> org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
>        at
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
> Caused by: java.lang.RuntimeException: Error invoking service contribution
> method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        ... 88 more
> Caused by: java.lang.IllegalStateException: No PersistenceProvider
> implementation available in the runtime environment.
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getPersistenceProvider(EntityManagerSourceImpl.java:221)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.createEntityManagerFactory(EntityManagerSourceImpl.java:195)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getEntityManagerFactory(EntityManagerSourceImpl.java:185)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.create(EntityManagerSourceImpl.java:229)
>        at $EntityManagerSource_125fe4414e8b18be.create(Unknown Source)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getOrCreateEntityManager(EntityManagerManagerImpl.java:78)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.createAllEntityManagers(EntityManagerManagerImpl.java:68)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getEntityManagers(EntityManagerManagerImpl.java:59)
>        at $EntityManagerManager_125fe4414e8b18bd.getEntityManagers(Unknown
> Source)
>        at $EntityManagerManager_125fe4414e8b18bc.getEntityManagers(Unknown
> Source)
>        at
> org.apache.tapestry5.jpa.JpaModule.startupEarly(JpaModule.java:186)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
>        ... 93 more
> java.lang.reflect.UndeclaredThrowableException
>        at $Proxy0.invoke(Unknown Source)
>        at
> org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
>        at
> org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
>        at
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
> Caused by: java.lang.reflect.InvocationTargetException
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
>        ... 4 more
> Caused by: org.testng.TestNGException:
> An error occurred while instantiating class
> org.iminer.test.user.service.TestUserService: null
>        at
> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:383)
>        at
> org.testng.internal.ClassHelper.createInstance(ClassHelper.java:284)
>        at
> org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:109)
>        at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:181)
>        at
> org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
>        at org.testng.TestRunner.initMethods(TestRunner.java:402)
>        at org.testng.TestRunner.init(TestRunner.java:228)
>        at org.testng.TestRunner.init(TestRunner.java:198)
>        at org.testng.TestRunner.<init>(TestRunner.java:147)
>        at
> org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:525)
>        at org.testng.SuiteRunner.init(SuiteRunner.java:156)
>        at org.testng.SuiteRunner.<init>(SuiteRunner.java:110)
>        at org.testng.TestNG.createSuiteRunner(TestNG.java:1235)
>        at org.testng.TestNG.createSuiteRunners(TestNG.java:1222)
>        at org.testng.TestNG.runSuitesLocally(TestNG.java:1074)
>        at org.testng.TestNG.run(TestNG.java:999)
>        at
> org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:60)
>        at
> org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeMulti(TestNGDirectoryTestSuite.java:153)
>        at
> org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:99)
>        at
> org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:111)
>        ... 9 more
> Caused by: java.lang.ExceptionInInitializerError
>        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>        at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>        at
> org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:28)
>        at
> org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:372)
>        ... 28 more
> Caused by: java.lang.RuntimeException: Exception constructing service
> 'RegistryStartup': Error invoking service contribution method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:75)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:54)
>        at $Runnable_125fe4414e8b18bb.delegate(Unknown Source)
>        at $Runnable_125fe4414e8b18bb.run(Unknown Source)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.performRegistryStartup(RegistryImpl.java:322)
>        at
> org.apache.tapestry5.ioc.internal.RegistryWrapper.performRegistryStartup(RegistryWrapper.java:80)
>        at org.apache.tapestry5.test.PageTester.<init>(PageTester.java:118)
>        at
> com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:34)
>        at
> com.formos.tapestry.testify.core.TapestryTester.<init>(TapestryTester.java:44)
>        at
> org.iminer.test.AbstractIminerTest.<clinit>(AbstractIminerTest.java:15)
>        ... 34 more
> Caused by: org.apache.tapestry5.ioc.internal.OperationException: Error
> invoking service contribution method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:47)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:76)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.addToOrderedConfiguration(RegistryImpl.java:626)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.getOrderedConfiguration(RegistryImpl.java:480)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:110)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$2.invoke(ServiceResourcesImpl.java:107)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getOrderedConfiguration(ServiceResourcesImpl.java:105)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.getOrderedConfiguration(AbstractServiceCreator.java:123)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator.access$200(AbstractServiceCreator.java:35)
>        at
> org.apache.tapestry5.ioc.internal.AbstractServiceCreator$1.findResource(AbstractServiceCreator.java:103)
>        at
> org.apache.tapestry5.ioc.internal.util.DelegatingInjectionResources.findResource(DelegatingInjectionResources.java:38)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:219)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.access$000(InternalUtils.java:49)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$2.invoke(InternalUtils.java:260)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:264)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1459)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils$21.invoke(InternalUtils.java:1454)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.util.InternalUtils.createConstructorConstructionPlan(InternalUtils.java:1451)
>        at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.getPlan(ConstructorServiceCreator.java:52)
>        at
> org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:61)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>        at
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>        at
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46)
>        at
> org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:63)
>        at
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:54)
>        at
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1121)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:66)
>        ... 43 more
> Caused by: java.lang.RuntimeException: Error invoking service contribution
> method
> org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager,
> boolean): No PersistenceProvider implementation available in the runtime
> environment.
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:130)
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.contribute(ContributionDefImpl.java:80)
>        at
> org.apache.tapestry5.ioc.internal.RegistryImpl$9.run(RegistryImpl.java:630)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:51)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
>        ... 88 more
> Caused by: java.lang.IllegalStateException: No PersistenceProvider
> implementation available in the runtime environment.
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getPersistenceProvider(EntityManagerSourceImpl.java:221)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.createEntityManagerFactory(EntityManagerSourceImpl.java:195)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.getEntityManagerFactory(EntityManagerSourceImpl.java:185)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerSourceImpl.create(EntityManagerSourceImpl.java:229)
>        at $EntityManagerSource_125fe4414e8b18be.create(Unknown Source)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getOrCreateEntityManager(EntityManagerManagerImpl.java:78)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.createAllEntityManagers(EntityManagerManagerImpl.java:68)
>        at
> org.apache.tapestry5.internal.jpa.EntityManagerManagerImpl.getEntityManagers(EntityManagerManagerImpl.java:59)
>        at $EntityManagerManager_125fe4414e8b18bd.getEntityManagers(Unknown
> Source)
>        at $EntityManagerManager_125fe4414e8b18bc.getEntityManagers(Unknown
> Source)
>        at
> org.apache.tapestry5.jpa.JpaModule.startupEarly(JpaModule.java:186)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:120)
>        ... 93 more
>
> --
> Bo Gao
> elivoa@gmail.com
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>


-- 
Best regards,

Igor Drobiazko
http://tapestry5.de
http://twitter.com/drobiazko