Since joining the family here at Eclipse a few years ago, one thing I can always count on is a hectic and exciting start to summer. This summer is no exception, and is kicked off with the release of EclipseLink 2.3.0 (Indigo).
Before I continue with brief descriptions of some of the new features of EclipseLink 2.3.0, I would like to thank everyone who was involved with this release. Whether your contribution to the project consisted of finding and entering bugs, contributing to the forums, or designing and implementing features, your contribution was important to the success of this project. Thank you, and I look forward to your contributions to our next major releases.
There are too many features and enhancement requests to touch on everything in this blog post, so I am going to limit it to what I believe are the highlights. For a complete 2.3.0 feature list, and to download and try out some of this stuff yourself, please click here.
2.3.0 offers EclipseLink users the ability to extend their model (JPA entities or MOXy JAXB beans) so that a set of additional extended mappings can be used at runtime. These additional mappings offer more flexibility for developers that may not know all the mappings required for the application at design time.
Support Multiple Tenants
2.3.0 offers developers the ability to design and deploy applications where their persistent entities for multiple tenants are stored in a shared table. A column (or columns) in the table is designated as the discriminator for the tenant.
Mappings for your model (JPA entities or MOXy JAXB beans) can now be stored externally to the running application. This allows mapping overrides and extended mappings (new in 2.3.0) to be easily and dynamically integrated into deployed applications.
Developers can now store different entities in different databases, and even have relationships between them using Composite Persistence Units (PU). This feature gives developers the ability to build persistence units, each connecting to their own datasource, and compose them together under a parent PU. The parent PU is then used as if it is a standard persistence unit.
Click here for more information, including examples and docs, on the above features, and to download 2.3.0.