问题
I have two entities where one of them inherits the other one, so I have in jar1 the entity1 and I have a jar2 the entity2->inherits(entity1)
in jar1:
@Entity
public class Entity1 {...}
in jar2:
@Entity
public class Entity2 extends Entity1 {...}
So how can I make this to work, it doesn't even compile saying:
An annotation processor threw an uncaught exception...
Caused by: java.lang.NullPointerException
at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.discoverMappedSuperclassesAndInheritanceParents(EntityAccessor.java:224)
It seems simple, but it does not work, what should I do?
UPDATE:
Here is the persistencel.xml for jar2:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns /persistence/persistence_2_0.xsd">
<persistence-unit name="EntityBPU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>my_datasource</jta-data-source>
<jar-file>jar1.jar</jar-file>
<properties>
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
</properties>
</persistence-unit>
回答1:
Theoretically there's nothing special about having two related entities in different JARs.
Check your environment and the way you compile.
来源:https://stackoverflow.com/questions/8372175/how-to-use-entity-attribute-when-inheritance-is-across-separate-jars