Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Development/JPA2.0/container support
Contents
Application Server Support
JPA 2.0 Root | Enhancement Request
Issue Summary
Going forward we will need to ensure that we can support deploying against a 1.0 compliant application server using new EclipseLink versions with JPA 2.0 support.
As a start WebLogic and GlassFish should be supported.
We will also need to ensure that a JPA 2.0 application can be deployed against a JPA 1.0 compliant container using the new EclipseLink libraries.
General Solution
- Shared libraries should be investigated first but other options may be available. Replacing server jars should not be considered as an option
EclipseLink Requirements
We will be developing this functionality within the main product stream. Specification defined interfaces will be created and packaged within a javax.persistence_2.0 bundle/jar for users who wish to preview the functionality. To remain backward compatible with JPA 1.0 we will be packaging any interfaces we must link with for JPA 2.0 within the eclipselink JPA bundle/jar. As this bundle/jar will not contain the EMF API users will be required to choose their JPA version by using the appropriate persistence bundle/jar. Not bundling all the interfaces allows us to produce a single EclipseLink JPA bundle/jar while alleviating the concern of user's hitting preview code when they do not expect to. Class file to be included in EclipseLink JPA bundle
* javax.persistence.Cache * javax.persistence.Access * javax.persistence.AccessType * javax.persistence.LockModeType * javax.persistence.LockTimeoutException * javax.persistence.PessimisticLockException
Metadata Changes
The following changes need to be handled keeping the backwards compatibility to JPA 1.0 goals in mind:
* New Annotations * Modified Annotations * Changes to the XML Schemas * new Interfaces * reference to new interfaces
Work Required
- Investigation
- approx 2 days - getting environments up
- approx 5 days - prototyping an preparing recommendation
- approx 3 days - getting build scripts changes and deliverables created