EclipseLink Plugins Zip
-----------------------

This zip file contains the OSGI bundles necessary to run EclipseLink in OSGI.  Source for these bundles is available either in our SVN repository or in our distribution zip file that can be found at: http://www.eclipse.org/eclipselink/downloads/index.php.

The following bundles are included:

EclipseLink Core Functionality
------------------------------
- org.eclipse.persistence.core
- org.eclipse.persistence.asm
- org.eclipse.persistence.antlr
- javax.jms
- javax.mail
- javax.persistence
- javax.resource
- javax.transaction
- javax.xml.rpc
- javax.xml.soap
- org.apache.ant
- org.glassfish.javax.json

EclipseLink JPA
---------------
- org.eclipse.persistence.jpa
- javax.persistence (version 1.99 required for OSGI)

EclipseLink Moxy
----------------
- org.eclipse.persistence.moxy
- javax.xml.bind

EclipseLink SDO
---------------
- org.eclipse.persistence.sdo
- commonj.sdo




