Erweiterung von JPA-Entitäten
Der JPA 2.0-Provider, der in Liberty enthalten ist, basiert auf Apache OpenJPA. OpenJPA verwendet die Erweiterung des Java™-Bytecodes persistenter JPA-Typen (Entity, Embeddable, MappedSuperclass), um Statusüberwachung und andere notwendige Informationen zur Aktivierung der Persistenz und anderer optimierter Features in JPA-Klassen hinzuzufügen. In einer Anwendungsserverumgebung wird die Erweiterung Ihrer JPA-Entitäten automatisch wirksam, wenn die Anwendung vom Liberty-Server geladen wird.
Eine vorab (d. h. zur Buildzeit) durchgeführte Erweiterung von JPA-Klassen ist notwendig, wenn ein persistentes Java-Archiv (JAR) in Anwendungsserverumgebungen und Umgebungen ohne Anwendungsserver verwendet wird. Am häufigsten werden
die Ant-Task "OpenJPA enhancer" und "PCEnhancer" verwendet, um die Erweiterung zur Buildzeit vorzunehmen.
Diese Optionen für die Erweiterung zur Buildzeit setzen voraus, dass die OpenJPA-Bibliothek und abhängige Bibliotheken im classpath angegeben sind. Der Befehl
wsenhancer in der WebSphere Application Server Traditional-Installation kann ebenfalls verwendet werden.
Anmerkung: Der Provider der Spezifikation JPA 2.1
für Liberty ist EclipseLink. EclipseLink erfordert keine Entitätserweiterung.