Ich bin auf der Suche nach einer einfachen Möglichkeit, bestehende JPA-Mapping zu erweitern. Die Idee ist wie folgt:Erweitern JPA Entity Mapping
Ich habe ein EAR-Projekt mit EJB3 + JPA-Modul, die ClassA annotiert und Tabelle class_a zugeordnet hat. Aber ich möchte, dass ein anderes Modul (ein anderes EJB-Modul) ClassB enthält, das ClassA weitere Eigenschaften hinzufügt (extend?).
Eine Möglichkeit, die ich über, ist nur diese zusätzlichen Felder der Tabelle class_a hinzufügen und führen Sie nicht-HQL-Abfragen, um diese Daten abzurufen. Es ist nicht gut, da ich viele Dinge per Hand erledigen muss: Typ Mapping, Spalten Mapping, etc.
Ich habe einfache Überprüfung getan, aber es scheint, dass ich ClassA im zweiten Modul (von ClassB) nicht erweitern kann, weil Sie verwenden verschiedene EntityManagerFactories und einige Klassen des ersten Moduls werden nicht von Sekunde zu Sekunde gesehen und umgekehrt.
Ich habe bereits die < JAR-Datei > Tag innerhalb persistence.xml gesehen. Ich brauche so etwas, aber die Verwendung davon erfordert, dass diese Datei im ersten Modul aufgelistet ist und existieren muss (Es wird nicht übersprungen, wenn es nicht gefunden wird). Gibt es so etwas, das man auf das Erweiterungsmodul legen kann (zweites) und nicht das ausziehbare (das erste)?
Wenn es eine Möglichkeit gibt, das JPA-Mapping in der Laufzeit zu erweitern, wäre es großartig. Gibt es so einen Weg? Gibt es eine andere Lösung für mein Problem?