Unfortunately, the issue still exists. I've attached an updated stack trace
in [1]. I'll try to look at the diff if anything jumps out. :)
Thanks for the quick reply!
[1]
com.exist.eot.user.service.impl.GroupServiceImplTest Time elapsed: 1.141
sec <<< ERROR!
org.unitils.core.UnitilsException: Unable to start transaction. Could not
retrieve PlatformTransactionManager from the Spring application context.
Make sure either to configure one, or use another Unitils transaction
manager. (e.g. SimpleTransactionManager, by setting the property
'transactionManager.type' to 'simple')
at
org.unitils.database.transaction.impl.SpringTransactionManager.startTransaction(SpringTransactionManager.java:86)
at
org.unitils.database.DatabaseModule.startTransaction(DatabaseModule.java:286)
at
org.unitils.database.DatabaseModule$DatabaseTestListener.beforeTestSetUp(DatabaseModule.java:386)
at
org.unitils.core.Unitils$UnitilsTestListener.beforeTestSetUp(Unitils.java:228)
at
org.unitils.UnitilsJUnit4TestClassRunner$CustomTestClassMethodsRunner.createMethodRunner(UnitilsJUnit4TestClassRunner.java:142)
at
org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:66)
at
org.unitils.UnitilsJUnit4TestClassRunner$CustomTestClassMethodsRunner.invokeTestMethod(UnitilsJUnit4TestClassRunner.java:155)
at
org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:35)
at
org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42)
at
org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
at
org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)
at
org.unitils.UnitilsJUnit4TestClassRunner.run(UnitilsJUnit4TestClassRunner.java:95)
at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
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:585)
at
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:334)
at
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:980)
Caused by: org.springframework.transaction.CannotCreateTransactionException:
Could not open JPA EntityManager for transaction; nested exception is
<openjpa-1.1.0-SNAPSHOT-r420667:633326M fatal general error>
org.apache.openjpa.persistence.PersistenceException: An instance of the
class "class
org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
could not be instantiated. Make sure the class has a public no-args
constructor.
at
org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:379)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:377)
at
org.unitils.database.transaction.impl.SpringTransactionManager.startTransaction(SpringTransactionManager.java:82)
... 21 more
Caused by: <openjpa-1.1.0-SNAPSHOT-r420667:633326M fatal general error>
org.apache.openjpa.persistence.PersistenceException: An instance of the
class "class
org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
could not be instantiated. Make sure the class has a public no-args
constructor.
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:333)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:226)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:188)
at
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56)
at
org.springframework.orm.jpa.JpaTransactionManager.createEntityManagerForTransaction(JpaTransactionManager.java:396)
at
org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:320)
... 23 more
Caused by: org.apache.commons.lang.exception.NestableRuntimeException: An
instance of the class "class
org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
could not be instantiated. Make sure the class has a public no-args
constructor.
at
org.apache.openjpa.lib.conf.Configurations.newInstance(Configurations.java:227)
at
org.apache.openjpa.lib.conf.ObjectValue.newInstance(ObjectValue.java:109)
at
org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:102)
at
org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83)
at
org.apache.openjpa.conf.OpenJPAConfigurationImpl.getClassResolverInstance(OpenJPAConfigurationImpl.java:566)
at
org.apache.openjpa.meta.AbstractCFMetaDataFactory.getPersistentTypeNames(AbstractCFMetaDataFactory.java:601)
at
org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:188)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:475)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:295)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:245)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:216)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:184)
at
org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:121)
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:585)
at
org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:317)
... 31 more
Caused by: java.lang.InstantiationException:
org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl
at java.lang.Class.newInstance0(Class.java:335)
at java.lang.Class.newInstance(Class.java:303)
at
org.apache.openjpa.lib.util.J2DoPrivHelper$11.run(J2DoPrivHelper.java:343)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.openjpa.lib.conf.Configurations.newInstance(Configurations.java:221)
... 48 more
Patrick Linskey-2 wrote:
>
> Hi,
>
> I just checked in a change that might fix this issue with r633326. I
> didn't do any validation or testing; I just made a private class
> public. Looks like the issue is a combination of reflection and
> security controls; hopefully this blind stab in the dark will resolve
> it. If not, let us know and we'll take a closer look.
>
> -Patrick
>
> On Mon, Mar 3, 2008 at 2:46 AM, Adrian Co <[EMAIL PROTECTED]> wrote:
>>
>> Hi,
>>
>> I've updated to the latest OpenJPA version in trunk (rev 633027) and
>> built
>> it with test disabled (-Dmaven.test.skip=true) and ran it against my
>> unit
>> test cases. It failed with the exception in [1]. Last working version I
>> used
>> was rev 613030, which is also based on 1.1.0-SNAPSHOT. Is this a bug or
>> did
>> any configuration change occurred? Let me know if you need any other
>> details.
>>
>> Thanks for any help! :)
>>
>> Regards,
>> Adrian Co
>>
>> [1]
>> com.exist.eot.user.service.impl.GroupServiceImplTest Time elapsed:
>> 1.109
>> sec <<< ERROR!
>> org.unitils.core.UnitilsException: Unable to start transaction. Could
>> not
>> retrieve PlatformTransactionManager from the Spring application context.
>> Make sure either to configure one, or use another Unitils transaction
>> manager. (e.g. SimpleTransactionManager, by setting the property
>> 'transactionManager.type' to 'simple')
>> at
>>
>> org.unitils.database.transaction.impl.SpringTransactionManager.startTransaction(SpringTransactionManager.java:86)
>> at
>>
>> org.unitils.database.DatabaseModule.startTransaction(DatabaseModule.java:286)
>> at
>>
>> org.unitils.database.DatabaseModule$DatabaseTestListener.beforeTestSetUp(DatabaseModule.java:386)
>> at
>>
>> org.unitils.core.Unitils$UnitilsTestListener.beforeTestSetUp(Unitils.java:228)
>> at
>>
>> org.unitils.UnitilsJUnit4TestClassRunner$CustomTestClassMethodsRunner.createMethodRunner(UnitilsJUnit4TestClassRunner.java:142)
>> at
>>
>> org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.java:66)
>> at
>>
>> org.unitils.UnitilsJUnit4TestClassRunner$CustomTestClassMethodsRunner.invokeTestMethod(UnitilsJUnit4TestClassRunner.java:155)
>> at
>>
>> org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.java:35)
>> at
>>
>> org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.java:42)
>> at
>>
>> org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:34)
>> at
>> org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)
>> at
>>
>> org.unitils.UnitilsJUnit4TestClassRunner.run(UnitilsJUnit4TestClassRunner.java:95)
>> at
>>
>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
>> at
>>
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
>> at
>>
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
>> at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>> 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:585)
>> at
>>
>> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:334)
>> at
>>
>> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:980)
>> Caused by:
>> org.springframework.transaction.CannotCreateTransactionException:
>> Could not open JPA EntityManager for transaction; nested exception is
>> <openjpa-1.1.0-SNAPSHOT-r420667:632486M fatal general error>
>> org.apache.openjpa.persistence.PersistenceException: An instance of the
>> class "class
>>
>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
>> could not be instantiated. Make sure the class has a public no-args
>> constructor.
>> at
>>
>> org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:379)
>> at
>>
>> org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:377)
>> at
>>
>> org.unitils.database.transaction.impl.SpringTransactionManager.startTransaction(SpringTransactionManager.java:82)
>> ... 21 more
>> Caused by: <openjpa-1.1.0-SNAPSHOT-r420667:632486M fatal general error>
>> org.apache.openjpa.persistence.PersistenceException: An instance of the
>> class "class
>>
>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
>> could not be instantiated. Make sure the class has a public no-args
>> constructor.
>> at
>>
>> org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:333)
>> at
>>
>> org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:226)
>> at
>>
>> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:188)
>> at
>>
>> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
>> at
>>
>> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
>> at
>>
>> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
>> at
>>
>> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56)
>> at
>>
>> org.springframework.orm.jpa.JpaTransactionManager.createEntityManagerForTransaction(JpaTransactionManager.java:396)
>> at
>>
>> org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:320)
>> ... 23 more
>> Caused by: org.apache.commons.lang.exception.NestableRuntimeException:
>> An
>> instance of the class "class
>>
>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl"
>> could not be instantiated. Make sure the class has a public no-args
>> constructor.
>> at
>>
>> org.apache.openjpa.lib.conf.Configurations.newInstance(Configurations.java:227)
>> at
>>
>> org.apache.openjpa.lib.conf.ObjectValue.newInstance(ObjectValue.java:109)
>> at
>>
>> org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:102)
>> at
>> org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83)
>> at
>>
>> org.apache.openjpa.conf.OpenJPAConfigurationImpl.getClassResolverInstance(OpenJPAConfigurationImpl.java:566)
>> at
>>
>> org.apache.openjpa.meta.AbstractCFMetaDataFactory.getPersistentTypeNames(AbstractCFMetaDataFactory.java:601)
>> at
>>
>> org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:188)
>> at
>>
>> org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:475)
>> at
>>
>> org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:295)
>> at
>> org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:245)
>> at
>> org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:216)
>> at
>> org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:184)
>> at
>>
>> org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:121)
>> 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:585)
>> at
>>
>> org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:317)
>> ... 31 more
>> Caused by: java.lang.InstantiationException:
>> org.apache.openjpa.persistence.PersistenceUnitInfoImpl$ClassResolverImpl
>> at java.lang.Class.newInstance0(Class.java:335)
>> at java.lang.Class.newInstance(Class.java:303)
>> at
>>
>> org.apache.openjpa.lib.util.J2DoPrivHelper$11.run(J2DoPrivHelper.java:343)
>> at java.security.AccessController.doPrivileged(Native Method)
>> at
>>
>> org.apache.openjpa.lib.conf.Configurations.newInstance(Configurations.java:221)
>> ... 48 more
>> --
>> View this message in context:
>> http://www.nabble.com/InstantiationException-in-latest-OpenJPA-build-tp15799949p15799949.html
>> Sent from the OpenJPA Users mailing list archive at Nabble.com.
>>
>>
>
>
>
> --
> Patrick Linskey
> 202 669 5907
>
>
--
View this message in context:
http://www.nabble.com/InstantiationException-in-latest-OpenJPA-build-tp15799949p15819702.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.