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/Development/MOXy"

(EclipseLink 2.6)
(EclipseLink2.5)
 
Line 12: Line 12:
 
[http://wiki.eclipse.org/EclipseLink/Development/2.5.0 2.5.0 Feature Summary]
 
[http://wiki.eclipse.org/EclipseLink/Development/2.5.0 2.5.0 Feature Summary]
  
* '''MOXy NamedObjectGraphs'''
 
** [http://wiki.eclipse.org/EclipseLink/Development/396542 Design doc]
 
*** Allow a subset of attributes to be marshaled and unmarshaled
 
** Examples
 
*** [[EclipseLink/Examples/MOXy/ObjectGraphs/Metadata|Specifying Object Graphs through Metadata]]
 
*** [[EclipseLink/Examples/MOXy/ObjectGraphs/Programmatic|Specifying Object Graphs Programmatically]]
 
*** [[EclipseLink/Examples/MOXy/ObjectGraphs/Inheritance|Handling Inheritance]]
 
*** [[EclipseLink/Examples/MOXy/Dynamic/ObjectGraphs|Object Graphs & Dynamic JAXB]]
 
* '''Mapping Enhancements'''
 
** [[EclipseLink/Examples/MOXy/Mappings/Bidirectional|@XmlInverseReferecne is writable in both directions]]
 
** [[EclipseLink/Examples/MOXy/JSON_CollectionProperties|Better support for Mapping a Collection to both XML and JSON by leveraging @XmlElementWrapper as JSON key]]
 
* '''JAX-RS Enhancements'''
 
** [[EclipseLink/Examples/MOXy/MOXy_JSON_Provider/JSONwithPadding|Added support for JSON with Padding]]
 
** [http://bugs.eclipse.org/401442 Tweaked MOXyJsonProvider so that it supports more JAX-RS implementations]
 
 
* '''Performance'''
 
* '''Performance'''
 
** Numerous performance improvements were implemented in this release, ensuring MOXy continues to perform as a best-in-class XML & JSON binding solution.
 
** Numerous performance improvements were implemented in this release, ensuring MOXy continues to perform as a best-in-class XML & JSON binding solution.

Latest revision as of 09:25, 24 April 2013

Roadmap

EclipseLink 2.6

The theme of this release is reducing MOXy's install footprint and supporting JSON schema.

2.6.0 Feature Summary


EclipseLink2.5

The theme of this release is RESTful services. Much of the work that was done was to make it easier for users to create RESTful services with MOXy easier either standalone or by leveraging JPA-RS.

2.5.0 Feature Summary


EclipseLink2.4

  • Object binding to JSON
  • Glassfish/WLS Service Integrations
    • JAX-RS
      • Develop set of JAX-RS server tests for execution across supported app servers (starting with WLS, GF)
    • JAX-WS
      • JAX-WS CTS, TCK tests running using MOXy as JAXB binding provider in WLS environment
  • Feature extensions
    • Set of feature mirroring JAXB RI extensions - each of these need to be validated and approved.
    • NamespacePrefixMapper (Matt)
      • The MOXy equivalent would be a interface that users could Implement to configure the NamespaceResolver.
    • @com.sun.xml.bind.annotation.OverrideAnnotationOf
    • @com.sun.xml.bind.annotation.XmlIsSet
      • This is comparable to existing @XmlIsSetNullPolicy
    • @com.sun.xml.bind.annotation.XmlLocation
      • This annotation is placed on a field /property of type Locator, and is used to capture the XML location of where the object is unmarshalled from.
    • com.sun.xml.bind.CycleRecoverable
      • Similar to MOXy’s @XmlInverseReference, except that it is an interface implemented by the POJO instead of an annotation.
    • com.sun.xml.bind.v2.model.annotation Locatable
      • Locatable forms a tree structure, where each Locatable points back to the upstream Locatable. For example, imagine Locatable X that points to a particular annotation, whose upstream is Locatable Y, which points to a particular method (on which the annotation is put), whose upstream is Locatable Z, which points to a particular class (in which the method is defined), whose upstream is Locatable W, which points to another class (which refers to the class Z), and so on.
    • com.sun.xml.bind.v2.runtime.reflect.AccessorFactory
      • Provides a way to provide a custom AttributeAccessor.
    • IDResolver
  • Bug backlog

EclipseLink2.3

  • JPA RESTful services
  • Extend entities
    • Allow a user to start with a predesigned JAXBContext and add mappings to the entities without the need for the context to be recreated.
    • 339373 - Enhancement: Multiple Binding File Support.
    • 339383 - Enhancement: Persist metadata modifications made at runtime
    • 339377 - Enhancement: Programmatic means of adding mapping to an initialized XMLDescriptor at runtime
    • 339381 - Enhancement: XML Extensions.
  • Mapping enhancements
    • Externalize Mappings
    • MOXy support for mapping with predicates
    • MOXy support for multiple eclipselink-oxm.xml mapping files
    • MOXy support for custom XML name conversions
  • Integration points
    • JAX-WS2.0: TCK passing when using EclipseLink as JAXB provider
  • Performance, Memory usage
    • Improvements to memory footprint associated with SDOHelperContext
    • Analysis of memory footprint when running in a Cloud service environment
  • Customizable Name Mangling Algorithm
  • Bug backlog

EclipseLink2.2


Backlog of development items (MOXY, SDO)

  1. Diagnostics, Logging
    1. Similarly, need to improve this when being invoked within a Cloud service
  2. JAXB extensions
    1. Identify features to continue to align ourselves with reference implementation
  3. Integration points
    1. JAXB on Glassfish: Test our current level of support
    2. Improve large document support
  4. OSGi testing strategy
    1. Ability to create pure JAXB bundle
  5. Performance
    1. Reduce use of Lexical Handler
    2. SDO: Improve post processing of unmarshalling SDO Objects
  6. SDO3.0 feature work
    • New bootstrap API
    • Improve class generation to include new SDO 3.0 annotations
    • Enhanced key based relationships
      • Composite keys
      • Embedded key objects
    • Property Improvements
      • XML XPath based property access
      • Orphan properties
      • Enum support
    • Import - Moving DataObjects between HelperContexts
  7. Bug backlog

Back to the top