You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Adam Hardy (JIRA)" <ji...@apache.org> on 2009/02/09 16:09:00 UTC
[jira] Created: (OPENJPA-914) incorrect exception thrown for
unenhanced class when openjpa.RuntimeUnenhancedClasses=unsupported
incorrect exception thrown for unenhanced class when openjpa.RuntimeUnenhancedClasses=unsupported
--------------------------------------------------------------------------------------------------
Key: OPENJPA-914
URL: https://issues.apache.org/jira/browse/OPENJPA-914
Project: OpenJPA
Issue Type: Bug
Affects Versions: 1.2.0
Environment: linux, java 1.6.0_12
Reporter: Adam Hardy
Priority: Minor
I accidentally failed to enhance an entity class at build-time. Except that one, all others were enhanced.
With openjpa.RuntimeUnenhancedClasses = unsupported I figured any problems with enhancement would throw the following at initialization time:
org.apache.openjpa.persistence.ArgumentException: This configuration disallows runtime optimization, but the following listed types were not enhanced ....
at org.apache.openjpa.enhance.ManagedClassSubclasser.prepareUnenhancedClasses(ManagedClassSubclasser.java:102)
at org.apache.openjpa.kernel.AbstractBrokerFactory.loadPersistentTypes(AbstractBrokerFactory.java:310)
at org.apache.openjpa.kernel.AbstractBrokerFactory.initializeBroker(AbstractBrokerFactory.java:228)
at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:190)
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.permacode.atomic.AtomicConfigurationBean.getEntityManagerFactory(AtomicConfigurationBean.java:190)
However initialization succeeded and instead the following exception was thrown later:
org.apache.openjpa.persistence.ArgumentException: Errors encountered while resolving metadata. See nested exceptions for details.
at org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:563)
at org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:308)
at org.apache.openjpa.kernel.BrokerImpl.persist(BrokerImpl.java:2426)
at org.apache.openjpa.kernel.BrokerImpl.persist(BrokerImpl.java:2280)
at org.apache.openjpa.kernel.DelegatingBroker.persist(DelegatingBroker.java:1021)
at org.apache.openjpa.persistence.EntityManagerImpl.persist(EntityManagerImpl.java:645)
at org.permacode.patternrepo.jpa.JpaPortfolioDao.persist(JpaPortfolioDao.java:79)
I did a quick test and the main distinguishing feature of the classes that cause the wrong error message to be thrown are child classes of a mapped superclass. Simple classes without a superclass trigger the correct exception when not enhanced.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.