Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Release/2.1.0"

m (MOXy)
 
(46 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Image:Helios.jpg|Helios]] [[Image:Eclipselink-logo.gif|EclipseLink]]  
+
<table width="100%"><tr><td width="50%" align="center">[[Image:Helios.jpg|Helios]]</td><td align="center">[[Image:Eclipselink-logo.gif|EclipseLink]]</td></tr></table>
  
 
= EclipseLink 2.1.0 Release Notes =
 
= EclipseLink 2.1.0 Release Notes =
  
The EclipseLink 2.1 (Helios) release focuses on providing advanced persistence features for user of relational, XML and Web Services to expose advanced persistence features that naturally extend the industry standards in these spaces.
+
The EclipseLink 2.1 (Helios) release focuses on providing advanced persistence features for user of relational, XML and Web Services to expose extended persistence features that naturally extend the industry standards in these spaces.
 
+
Release under development see [http://www.eclipse.org/projects/project-plan.php?planurl=http://www.eclipse.org/eclipselink/project-info/plans/2_1_0.xml 2.1.0 Plan]
+
  
 
<div style="float:right;width:300px">
 
<div style="float:right;width:300px">
 
<div style="background:#ffffff;width:275px" align="center">
 
<div style="background:#ffffff;width:275px" align="center">
==[[Image:Go-bottom.png]][http://www.eclipse.org/eclipselink/downloads/index.php#2.1.0 Download EclipseLink 2.1.0]==
+
==[[Image:Go-bottom.png]][http://www.eclipse.org/eclipselink/downloads/2.1.0 Download EclipseLink 2.1.0]==
 
__TOC__
 
__TOC__
 
</div>
 
</div>
 
</div>
 
</div>
 
  
 
== New and Noteworthy ==
 
== New and Noteworthy ==
  
 
=== JPA ===
 
=== JPA ===
* Advanced Querying
+
* Query inheritance hierarchies with casting using '''TREAT...AS'''. ...''[[EclipseLink/Release/2.1.0/JPAQueryEnhancements#Query%20Casting|learn more]]''  
** [[EclipseLink/Release/2.1.0/JPAQueryEnhancements#Query%20Casting|'''Casting''' in JPQL with TREAT...AS and in Criteria]]
+
* Addition batch read modes using '''IN''' and '''EXISTS'''. ...''[[EclipseLink/Release/2.1.0/JPAQueryEnhancements#Batching%20reading%20using%20exist%20and%20IN|learn more]]''
** [[EclipseLink/Release/2.1.0/JPAQueryEnhancements#Batching%20reading%20using%20exist%20and%20IN|'''Batch IN and EXISTS''' reading modes for queries and mappings]]
+
* Use database functions in JPQL with '''FUNC'''. ...''[[EclipseLink/Release/2.1.0/JPAQueryEnhancements#FUNC|learn more]] ''
** [[EclipseLink/Release/2.1.0/JPAQueryEnhancements#FUNC|'''FUNC''' in and JPQL to invoke database functions]]
+
* More flexible JPQL support with extended grammar - ([https://bugs.eclipse.org/bugs/show_bug.cgi?id=219814#c10 bugs]) - [[EclipseLink/Release/2.1.0/JPAQueryEnhancements#Query_Keys_in_Queries|Query Keys]], ...
** Support Functions in JPQL: ORDER BY, GROUP BY, HAVING, constructors, like - {{bug|306766}}, {{bug|295363}}
+
* Fetch, Load, Copy & Merge of partial entities using '''AttributeGroup'''. ... ''[[EclipseLink/Examples/JPA/AttributeGroup|learn more]]''
** Support for referencing manually defined Query Keys in JPQL - {{bug|311757}}
+
* Further optimization of multiple table writes to group INSERT/UPDATE
** Optimized inheritance querying - {{bug|310505}}
+
* '''eclipselink-orm.xml''': Map JPA models using extended EclipseLink JPA mappings in XML ... ''[[EclipseLink/Examples/JPA/EclipseLink-ORM.XML|learn more]]'' - ([https://bugs.eclipse.org/bugs/buglist.cgi?status_whiteboard_type=substring;query_format=advanced;status_whiteboard=eclipselink-orm.xml;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=2.1;product=EclipseLink;classification=RT bugs])
** 1:M join fetching with pagination, cursors
+
* '''Dynamic Persistence''': JPA without requiring Java classes. ... ''[[EclipseLink/Examples/JPA/Dynamic|learn more]]''
* [[EclipseLink/Examples/JPA/AttributeGroup|'''AttributeGroup''' support for Fetch, Load, Copy & Merge of partial entities]]
+
* New [http://www.eclipse.org/eclipselink/api/2.1/org/eclipse/persistence/platform/server/sap/SAPNetWeaver_7_1_Platform.html SAPNetWeaver_7_1_Platform] Server Platform
* batch writing with multiple tables/inheritance
+
* New [http://www.eclipse.org/eclipselink/api/2.1/org/eclipse/persistence/platform/database/SymfowarePlatform.html SymfowarePlatform] Database Platform
* [[EclipseLink/Examples/JPA/EclipseLink-ORM.XML|'''eclipselink-orm.xml''': Additional support for advanced mapping configuration]] - ([https://bugs.eclipse.org/bugs/buglist.cgi?status_whiteboard_type=substring;query_format=advanced;status_whiteboard=eclipselink-orm.xml;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=2.1;product=EclipseLink;classification=RT bugs])
+
* '''OSGi JPA''': [[EclipseLink/Release/2.1.0/JPA in OSGi|Future compatibility for OSGi Enterprise specification for JPA]] as implemented in [http://www.eclipse.org/gemini/jpa/ Gemini JPA Project].
* '''Platform Support'''
+
** New Server Platform - [http://www.eclipse.org/eclipselink/api/2.1/org/eclipse/persistence/platform/server/sap/SAPNetWeaver_7_1_Platform.html SAPNetWeaver_7_1_Platform] configured using [http://www.eclipse.org/eclipselink/api/2.1/org/eclipse/persistence/config/TargetServer.html#SAPNetWeaver_7_1 TargetServer.SAPNetWeaver_7_1]
+
** New Database Platform - [http://www.eclipse.org/eclipselink/api/2.1/org/eclipse/persistence/platform/database/SymfowarePlatform.html SymfowarePlatform]
+
* '''OSGi JPA''': Future compatibility for OSGi Enterprise specification for JPA as implemented in [http://www.eclipse.org/gemini/jpa/ Gemini JPA Project].  
+
** Moved previous functionality into '''org.eclipse.persistence.jpa.osgi''' fragment which extends '''org.eclipse.persistence.jpa''' bundle
+
  
 
=== MOXy ===
 
=== MOXy ===
* JAXB 2.2 Compliance
+
* '''Store MOXy mappings in eclipselink-oxm.xml''': JAXB without annotations. ...[[EclipseLink/Examples/MOXy/EclipseLink-OXM.XML | ''learn more'']]
* Advanced Configuration using eclipselink-oxm.xml to externalize JAXB and extended mappings
+
* '''Mapping Enhancements''': @XmlPath, multi-dimensional arrays, untyped key based mappings
* Mapping Enhancements
+
* '''Generate XSD''' from JAXB and '''MOXY's extended mappings'''
** Annotation support (@XmlPath) for path based mapping
+
* '''Dynamic Persistence''': XML Binding without Java classes. ...[[EclipseLink/Examples/MOXy/Dynamic|''learn more'']]
** Added support for multi-dimensional arrays
+
** Added support for untyped key based mapping (where the property is type Object)
+
** JAXB schema generation supports EclipseLink extensions
+
* Dynamic Persistence
+
** Bootstrap from XSD (produces dynamic entities based on JAXB schema to class generation) or XML config
+
** Customize bindings using eclipselink-oxm.xml
+
** Access dynamic entities using property names or XPath statements
+
  
 
=== SDO ===
 
=== SDO ===
* Added server support for WebSphere and JBoss
+
* Added support for EclipseLink SDO usage with '''WebSphere''' and '''JBoss'''
 
* Enhanced support for local helper contexts (including Java serialization for DataObjects associated with local helper contexts).
 
* Enhanced support for local helper contexts (including Java serialization for DataObjects associated with local helper contexts).
  
Line 56: Line 41:
 
* Support for Eclipse WTP Dynamic Web Project structure
 
* Support for Eclipse WTP Dynamic Web Project structure
  
=== Examples ===
 
* TBD
 
  
=== Other Projects ===
+
 
 +
=== Helios Projects leveraging EclipseLink===
  
 
Within the Helios release there are other projects that either include EclipseLink or offer complementary functionality.
 
Within the Helios release there are other projects that either include EclipseLink or offer complementary functionality.
Line 67: Line 51:
 
* [[Jetty/Tutorial/EclipseRT-Jetty-StarterKit-SDK|EclipseRT Jetty StarterKit Tutorial with EclipseLink]]
 
* [[Jetty/Tutorial/EclipseRT-Jetty-StarterKit-SDK|EclipseRT Jetty StarterKit Tutorial with EclipseLink]]
 
* Swordfish 0.10 - uses EclipseLink SDO
 
* Swordfish 0.10 - uses EclipseLink SDO
 +
 +
=== Standards Based ===
 +
 +
* JPA 2.0
 +
* JAXB 2.2
 +
* SDO 2.1.1
  
 
==Known Issues==
 
==Known Issues==
Line 87: Line 77:
 
| There is a known dependency issue when building RCP applications using the <code>org.eclipse.persistence.moxy</code> bundle in combination with the <code>org.eclipse.core.runtime</code>. For more information and workarounds for this issue, please refer to {{bug|298318}}.
 
| There is a known dependency issue when building RCP applications using the <code>org.eclipse.persistence.moxy</code> bundle in combination with the <code>org.eclipse.core.runtime</code>. For more information and workarounds for this issue, please refer to {{bug|298318}}.
 
|}
 
|}
 +
 +
The following bug queries can be used by find known issues with specific feature areas. They return bugs reported against 2.1.
 +
 +
* [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;version=2.1;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc;product=EclipseLink;classification=RT All bugs reported against 2.1]
 +
** By Component: [https://bugs.eclipse.org/bugs/buglist.cgi?classification=RT;component=JPA;product=EclipseLink;query_format=advanced;version=2.1;query_based_on=;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc JPA] [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;version=2.1;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc;component=MOXy;classification=RT;product=EclipseLink MOXy] [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;version=2.1;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc;component=SDO;classification=RT;product=EclipseLink SDO] [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;version=2.1;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc;component=DBWS;classification=RT;product=EclipseLink DBWS] [https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;version=2.1;columnlist=bug_severity%2Cpriority%2Cversion%2Ctarget_milestone%2Cbug_status%2Creporter%2Cshort_desc;component=Foundation;classification=RT;product=EclipseLink Foundation]
  
 
== Resolved Issues ==
 
== Resolved Issues ==
Line 92: Line 87:
 
In addition to the features highlighted in the New and Noteworthy section this release also includes a substantial number of bug fixes and enhancement requests.  
 
In addition to the features highlighted in the New and Noteworthy section this release also includes a substantial number of bug fixes and enhancement requests.  
 
* [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed All Fixed Bugs and enhancement requests]
 
* [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed All Fixed Bugs and enhancement requests]
 +
*: Component: [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=Foundation;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed Foundation], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=JPA;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed JPA], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=MOXy;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed MOXy], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=SDO;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed SDO], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=DBWS;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed DBWS], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=Utils;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed Utils], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=Examples;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed Examples], [https://bugs.eclipse.org/bugs/buglist.cgi?resolution=FIXED;classification=RT;query_based_on=2.1%20Fixed;query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;component=Documentation;product=EclipseLink;target_milestone=2.1;known_name=2.1%20Fixed Documentation]
  
 
===Property Name Generation from Introspector.decapitalize ===
 
===Property Name Generation from Introspector.decapitalize ===
 +
 
The decapitalize method will now leave the property name in uppercase if the first and second characters are uppercase. EclipseLink will use the property name as ID, as detailed in the specification.
 
The decapitalize method will now leave the property name in uppercase if the first and second characters are uppercase. EclipseLink will use the property name as ID, as detailed in the specification.
  
Note that this may require a change in some JPQL. For example, if previously you had a method with an annotation such as '''getCCustomers''' that would have properties named '''cCustomers''', you will now have '''Customers'''.
+
Note that this may require a change in some JPQL. For example, if previously you had a method with an annotation such as '''getCCustomers''' that would previously have had a property named '''cCustomers''', you will now need to use property '''CCustomers'''.
  
 
== Deprecated Functionality ==
 
== Deprecated Functionality ==
Line 131: Line 128:
  
 
For more information about future planned EclipseLink releases and patch sets please refer to the releases section of the [http://www.eclipse.org/projects/project_summary.php?projectid=rt.eclipselink project summary].
 
For more information about future planned EclipseLink releases and patch sets please refer to the releases section of the [http://www.eclipse.org/projects/project_summary.php?projectid=rt.eclipselink project summary].
 +
 +
[[Category:EclipseLink|Release/2.1.0]]

Latest revision as of 14:45, 25 October 2011

HeliosEclipseLink

EclipseLink 2.1.0 Release Notes

The EclipseLink 2.1 (Helios) release focuses on providing advanced persistence features for user of relational, XML and Web Services to expose extended persistence features that naturally extend the industry standards in these spaces.

New and Noteworthy

JPA

MOXy

  • Store MOXy mappings in eclipselink-oxm.xml: JAXB without annotations. ... learn more
  • Mapping Enhancements: @XmlPath, multi-dimensional arrays, untyped key based mappings
  • Generate XSD from JAXB and MOXY's extended mappings
  • Dynamic Persistence: XML Binding without Java classes. ...learn more

SDO

  • Added support for EclipseLink SDO usage with WebSphere and JBoss
  • Enhanced support for local helper contexts (including Java serialization for DataObjects associated with local helper contexts).

DBWS

  • Support DBWSBuilder-generated JAX-WS Provider on JRockit
  • Support for Eclipse WTP Dynamic Web Project structure


Helios Projects leveraging EclipseLink

Within the Helios release there are other projects that either include EclipseLink or offer complementary functionality.

Standards Based

  • JPA 2.0
  • JAXB 2.2
  • SDO 2.1.1

Known Issues

The following are known issues that have been identified as potentially effecting users of EclipseLink 2.1. For a list of all open bugs and enhancement requests please see the queries at EclipseLink/Bugs


Summary Details
ElementCollection of Embeddable does not support AttribuiteChangeTracking When using an element collecion of embeddables the underlying AggregateCollectionMapping does not support attribute change tracking. This will effect the use of AttributeGroup (CopyGroup and serialized FetchGroup).
EclipseLink JPA with OSGi In order to use EclipseLink 2.1 OSGi, you must use the org.eclipse.persistence.jpa bundle included with this release. This bundle provides support for Gemini, the reference implementation for the OSGI Java EE integration specifica
RCP Development with MOXy There is a known dependency issue when building RCP applications using the org.eclipse.persistence.moxy bundle in combination with the org.eclipse.core.runtime. For more information and workarounds for this issue, please refer to bug 298318.

The following bug queries can be used by find known issues with specific feature areas. They return bugs reported against 2.1.

Resolved Issues

In addition to the features highlighted in the New and Noteworthy section this release also includes a substantial number of bug fixes and enhancement requests.

Property Name Generation from Introspector.decapitalize

The decapitalize method will now leave the property name in uppercase if the first and second characters are uppercase. EclipseLink will use the property name as ID, as detailed in the specification.

Note that this may require a change in some JPQL. For example, if previously you had a method with an annotation such as getCCustomers that would previously have had a property named cCustomers, you will now need to use property CCustomers.

Deprecated Functionality

In EclipseLink 2.1 the following features/API have been deprecated. Please upgrade to the suggested alternatives to avoid issues in the future when these deprecated features/AIP might be removed.

Summary Details
ObjectCopyPolicy The ObjectCopyPolicy has been replaced with the CopyGroup. The full API from ObjectCopyPolicy is supported by CopyGroup requiring only a minor class name change in user code.
ObjectLevelReadQuery.addPartialAttribute Partial attribute queries have been deprecated and replaced with the use of FetchGroup
ReadObjectQuery.selectionKey (Vector) Replaced with the use of an object for single part keys and a CacheId for composite keys. The replacement API is: ReadObjectQuery#selectionId.
BasicMap, BasicCollection, CollectionTable Deprecated in 2.0, these native mappings and supported configuration annotations are now supported by JPA 2.0's ElementCollection mapping and supported configuration annotations and orm.xml.

Removed Functionality

TODO: Was any previously deprecated functionality removed or any functionality that could not be deprecated first removed?

Retention Policy

The EclipseLink 2.1 (Helios) release will remain available for download from the primary download page until the next release is shipped. At that point it will be moved to the previous releases where it remain for a minimum period of 2 years before becoming available for archival.

Future Releases

For more information about future planned EclipseLink releases and patch sets please refer to the releases section of the project summary.

Back to the top