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 <eli...@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
> eli...@gmail.com
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


-- 
Best regards,

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

Reply via email to