Community
Participate
Working Groups
EclipseLink should provide Eclipse "Features" in order to make the EclipseLink OSGi bundles more easily consumed by the Eclipse IDE community. Features group bundles into functional units that can be easily managed and consumed by users. An update site should also be provided to host these features (in addition to the Galileo update site which will host train specific content).
Created attachment 127872 [details] Initial cut at EclipseLink features Attached is a first attempt at Eclipse Features for EclipseLink. I have created a separate feature for EclipseLink JPA, Moxy, SDO, and Oracle. The "Oracle" feature includes the Oracle DB specific functionality. This is something to look at and help further discuss what should be defined.
Created attachment 127873 [details] First cut at EclipseLink UpdateSite This is a first attempt at a p2 based update site that hosts the previously defined features. It does not include the Oracle feature due to the build dependency issues. In the update site you will see the contents of a p2 repository. I have not fully tested the update site or the plugins included, but it looks like they are functional. To reduce the size of the file, I am removing the actual plugins from the zip.
Created attachment 128133 [details] Updated features Updated zip of features for JPA, Moxy, SDO, and Oracle functionality. Changed to include dependencies as plugin entries as this appears to be the correct approach.
Created attachment 128134 [details] Updated Update Site This update site includes the necessary p2 metadata for dependencies. I have tested it locally and everything seems to be working well. We should be able to use this as a model for the production update site. The following plugins should be dropped into the /plugins directory in the update site to test it: commonj.sdo_2.1.1.jar javax.jms_1.1.0.jar javax.mail_1.4.0.jar javax.persistence_1.99.0.jar javax.resource_1.5.0.jar javax.transaction_1.1.0.jar javax.xml.bind_2.0.0.jar javax.xml.rpc_1.1.0.jar javax.xml.soap_1.3.0.jar javax.xml.stream_1.0.0.jar javax.xml.ws_2.0.0.jar org.eclipse.persistence.antlr_1.1.0.jar org.eclipse.persistence.asm_1.1.0.jar org.eclipse.persistence.core_1.1.0.jar org.eclipse.persistence.jpa_1.1.0.jar org.eclipse.persistence.moxy_1.1.0.jar org.eclipse.persistence.sdo_1.1.0.jar I could also build a test site on the EclipseLink website and host it there for testing purposes.
Dropping in the latest jars from the 1.1 bundle builds should work, since the qualifier on those jars is only on the file name, not in the manifest. As a result, these bundle jars don't actually have a qualifier in the bundle version. When we are done with all of this, the qualifier should be a part of bundle version (as a result of build changes). The build would update the qualifier segment on the bundles and the reference in the feature XML's. Side note - I forgot about DBWS, so don't expect to see it in the list on the Update Site.
It turns out that dropping in the bundles doesn't work for a couple of reasons, that being - the MD5 hash check, and the file name qualifiers mismatch. I have found that I don't have the access to publish the site on the EclipseLink website or in the EclipseLink area in the download server. I'll try to transfer the file to someone with access and have them publish the site for people to test.
I've tried out the P2 repository work that Neil's done and successfully installed our bundles in to Eclipse 3.5M5. We should not move to incorporate the generation of the P2 Repository into the EclipseLink build. The repository should be generated in addition to the existing bundle zip as non-Eclipse IDE users will still prefer the zip. We can do the build changes in the 1.1.1 branch but I'd like to see a P2 repository generated for 1.1 for the convenience of adopters and users. For example, on the EclipseLink newsgroup a developer is trying to install into Eclipse 3.5 to build RCP apps and having a P2 repository available would simplify the environment configuration.
I just realized we also need features for the bundle sources.
*** Bug 263367 has been marked as a duplicate of this bug. ***
closed overall Galileo bug as duplicate, since most of the work is being tracked here. Note: the Galileo bug explicitly wants Optimized Pack200 jars in the repository. Adding here as requirement to close. PM has asked for this bug to finalize the "feature definitions", then will send back to Eric (me) for implimentation. (assigning to Shaun) Note on features: I recall the feature discussion touched on adding features for: core (don't recall if we decided yea or nea) Equinox weaving source bundles (one for each feature created) DBWS (again don't recall yea or nea) Oracle We currently have features defined for: JPA MOXy SDO
Work is complete. four primary repositories exist: http://download.eclipse.org/rt/eclipselink/updates - for release builds.(in release version directories (TBD - 1.1.1 currently resides in updates)) http://download.eclipse.org/rt/eclipselink/incremental-updates/milestone - the latest milestone build http://download.eclipse.org/rt/eclipselink/incremental-updates/nightly - the latest nightly build http://download.eclipse.org/rt/eclipselink/galileo-integration - the build currently use for Galileo integration. There are six features: org.eclipse.persistence.jpa org.eclipse.persistence.moxy org.eclipse.persistence.sdo org.eclipse.persistence.jpa.source org.eclipse.persistence.moxy.source org.eclipse.persistence.sdo.source These should be divided into two categories (not working with online builds yet): EclipseLink EclipseLink Source
Work is proceeding on unresolved issues, but the sites are functioning. Closing bug. Perhaps I should mention feature composition: JPA contains: Core (and dependencies) Oracle extensions JPA and dependencies JPA Equinox Weaving MOXy contains: Core (and dependencies) MOXy and dependencies SDO contains: Core (and dependencies) MOXy and dependencies SDO and dependencies
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink