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
