No, its not really a very urgent issue. :)
 
Just wanted to try out the latest trunk and see if some minor issues I've
workaround got fixed, so I can deploy a new stable version in our repo.
Looking at the code, I was just as surprised that it didn't fail previously.

Would you mind if I just create and assign a jira to you? It would help in
the tracking.

Thanks for the help!


Patrick Linskey-2 wrote:
> 
> Interesting. Thing is, there is no no-args constructor.
> 
> It looks like this isn't just a small anomaly, but rather a codepath
> that wasn't exercised in prior versions. I'll look into creating a
> test case that replicates the problem so it doesn't regress. Is this
> particularly urgent for any reason?
> 
> -Patrick
> 
> On Mon, Mar 3, 2008 at 7:33 PM, Adrian Co <[EMAIL PROTECTED]> wrote:
>>
>>  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.
>>
>>
> 
> 
> 
> -- 
> Patrick Linskey
> 202 669 5907
> 
> 

-- 
View this message in context: 
http://www.nabble.com/InstantiationException-in-latest-OpenJPA-build-tp15799949p15821456.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.

Reply via email to