Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EclipseLink » NullPointerException on @VariableOneToOne (Getting NullPointerException on @VariableOneToOne annotation)
NullPointerException on @VariableOneToOne [message #514209] Fri, 12 February 2010 15:25 Go to previous message
No real name is currently offline No real name
Messages: 3
Registered: February 2010
Junior Member
Using EclipseLink 2.0.0 with postgres. Running as a java app inside eclipse.

In a mapped entity I have a reference to interface. I tried mapping using the @VariableOneToOne annotation, but I get an exception when eclipseLink is processing that mapping. I also use the @JoinColumn annotation on this reference.

Here is my original code:

@VariableOneToOne(
discriminatorColumn=@DiscriminatorColumn(
name="resourceClass",
discriminatorType=DiscriminatorType.INTEGER
),
discriminatorClasses={
@DiscriminatorClass(discriminator="3", value=Role.class)
}
)
@JoinColumn(name="resourceId")
private RoleResource resource;

If I remove the @VariableOneToOne annotation, eclipseLink defaults a VariableOneToOne mapping for me. If I use the @VariableOneToOne annotation, even without any arguments, I get this exception:

Exception in thread "main" Local Exception Stack:
Exception [EclipseLink-30005] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.PersistenceUnitLoadingExc eption
Exception Description: An exception was thrown while searching for persistence archives with ClassLoader: sun.misc.Launcher$AppClassLoader@11b86e7
Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.EntityManagerSetupExcepti on
Exception Description: Predeployment of PersistenceUnit [bardDomain] failed.
Internal Exception: java.lang.NullPointerException
at org.eclipse.persistence.exceptions.PersistenceUnitLoadingExc eption.exceptionSearchingForPersistenceResources(Persistence UnitLoadingException.java:126)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntity ManagerFactory(PersistenceProvider.java:133)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntity ManagerFactory(PersistenceProvider.java:65)
at javax.persistence.Persistence.createEntityManagerFactory(Per sistence.java:78)
at javax.persistence.Persistence.createEntityManagerFactory(Per sistence.java:54)
at com.netapp.dfm.server.db.DomainEntityTest.buildSessionFactor y(DomainEntityTest.java:44)
at com.netapp.dfm.server.db.DomainEntityTest.getSessionFactory( DomainEntityTest.java:38)
at com.netapp.dfm.server.db.DomainEntityTest.getSession(DomainE ntityTest.java:33)
at com.netapp.dfm.server.db.DomainEntityTest.runTest(DomainEnti tyTest.java:25)
at com.netapp.dfm.server.db.DomainEntityTest.main(DomainEntityT est.java:21)
Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.EntityManagerSetupExcepti on
Exception Description: Predeployment of PersistenceUnit [bardDomain] failed.
Internal Exception: java.lang.NullPointerException
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl. predeploy(EntityManagerSetupImpl.java:986)
at org.eclipse.persistence.internal.jpa.deployment.JPAInitializ er.callPredeploy(JPAInitializer.java:88)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntity ManagerFactory(PersistenceProvider.java:124)
... 8 more
Caused by: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.EntityManagerSetupExcepti on
Exception Description: Predeployment of PersistenceUnit [bardDomain] failed.
Internal Exception: java.lang.NullPointerException
at org.eclipse.persistence.exceptions.EntityManagerSetupExcepti on.predeployFailed(EntityManagerSetupException.java:210)
... 11 more
Caused by: java.lang.NullPointerException
at org.eclipse.persistence.internal.jpa.metadata.accessors.mapp ings.ObjectAccessor.getReferenceClass(ObjectAccessor.java:19 1)
at org.eclipse.persistence.internal.jpa.metadata.accessors.clas ses.ClassAccessor.addAccessor(ClassAccessor.java:200)
at org.eclipse.persistence.internal.jpa.metadata.accessors.clas ses.ClassAccessor.addAccessorFields(ClassAccessor.java:349)
at org.eclipse.persistence.internal.jpa.metadata.accessors.clas ses.ClassAccessor.addAccessors(ClassAccessor.java:322)
at org.eclipse.persistence.internal.jpa.metadata.accessors.clas ses.EntityAccessor.preProcess(EntityAccessor.java:657)
at org.eclipse.persistence.internal.jpa.metadata.accessors.clas ses.EntityAccessor.preProcess(EntityAccessor.java:593)
at org.eclipse.persistence.internal.jpa.metadata.MetadataProjec t.processStage1(MetadataProject.java:1296)
at org.eclipse.persistence.internal.jpa.metadata.MetadataProces sor.processORMMetadata(MetadataProcessor.java:460)
at org.eclipse.persistence.internal.jpa.deployment.PersistenceU nitProcessor.processORMetadata(PersistenceUnitProcessor.java :390)
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl. predeploy(EntityManagerSetupImpl.java:940)
... 10 more

Thanks for any help.

Greg
 
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic:eclipselink dynamic weaving not working from remote computer
Next Topic:Problem with deleting an object with a many-to-many mapping
Goto Forum:
  


Current Time: Tue May 21 08:11:36 EDT 2013

Powered by FUDForum. Page generated in 0.01782 seconds