Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Development/OSGi
This page is focussed on capturing how EclipseLink will be developed and used for an OSGi (Equinox) environment.
The goal of this effort is to produce OSGi bundles for use in other Eclipse projects and RCP applications. While the focus is on OSGi it is understood that Equinox extensions will be required.
Contents
Requirements
- Make EclipseLink bundles easy to use within other Eclipse projects and RCP applications without hindering the Java (SE/EE) usage
- Ensure that the bundles offer flexibility in their independent usage. The usage of EclipseLink JPA should not force the usage of EclipseLink's JAXB
Current Status
As of 1.0M2 EclipseLink does not make OSGi/Equinox bundles available. This page is tracking the requirements, proposals, and discussion as to how EclipseLink can most effectively be bundled.
Proposals
Bundles:
- org.eclipse.persistence.foundation
- Native object-relational persistence using ElcipseLink-ORM.XML or API
- Native Object-XML API using native XML mapping file or API configuration
- org.eclipse.persistence.jpa
- JPA 1.0 functionality
- Extended JPA support using EclipseLink's annotations, PU properties, and query hints
- Support for partial and complete EclipseLink-ORM.XML extensions of JPA
- org.eclipse.persistence.moxy
- JAXB 2.0 using annotations
- JAXB 2.0 using native XML mapping file
- org.eclipse.persistence.sdo
- SDO 2.1 support
- org.eclipse.persistence.eis
- Native Object-EIS/JCA using native XML mapping file or API configuration
Bundle Components
Use PDE for Component Projects
Dependent Bundles
JPA
QUESTION: Is there any value in having JPA (persistence.jar) available as a separate bundle or is this just part of the API exposed from the org.eclipse.poersistence.jpa bundle?