Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/359251"

Line 29: Line 29:
  
 
== Completed ==
 
== Completed ==
 
The following items have been checked into EclipseLink 2.3.3 and 2.4.0.
 
  
 
=== Test Get/Set For All Properties ===
 
=== Test Get/Set For All Properties ===
Line 62: Line 60:
 
* Would give the user more information after unmarshalling, could be useful in WSDL environments, or other times when JAXB XML data may be embedded within other XML
 
* Would give the user more information after unmarshalling, could be useful in WSDL environments, or other times when JAXB XML data may be embedded within other XML
  
=== NamespacePrefixMapper ===
+
=== NamespacePrefixMapper (2.3.3 and 2.4) ===
  
 
* '''COMPLETE'''
 
* '''COMPLETE'''
Line 72: Line 70:
 
* Custom Mapper would be provided via Marshaller properties
 
* Custom Mapper would be provided via Marshaller properties
  
=== IDResolver ===
+
=== IDResolver (2.3.3 and 2.4) ===
  
 
* '''COMPLETE'''
 
* '''COMPLETE'''
Line 81: Line 79:
 
*'''mgrebac''': "Need to look into this one further."
 
*'''mgrebac''': "Need to look into this one further."
  
=== IndentString ===
+
=== IndentString (2.3.3 and 2.4) ===
  
 
* '''COMPLETE'''
 
* '''COMPLETE'''
Line 89: Line 87:
 
* Allows the user to customize the indenting that happens in marshalled documents
 
* Allows the user to customize the indenting that happens in marshalled documents
  
=== CharacterEscapeHandler ===
+
=== CharacterEscapeHandler (2.3.3 and 2.4) ===
  
 
* '''COMPLETE'''
 
* '''COMPLETE'''
Line 98: Line 96:
 
* Not applicable when marshalling to: XMLStreamWriter, XMLEventWriter, ContentHandler, Node
 
* Not applicable when marshalling to: XMLStreamWriter, XMLEventWriter, ContentHandler, Node
  
=== XML Declaration Control ===
+
=== XML Declaration Control (2.3.3 and 2.4) ===
  
 
* '''COMPLETE'''
 
* '''COMPLETE'''
 
* '''DOCS NEEDED'''
 
* '''DOCS NEEDED'''
 
* Background Info:  [http://jaxb.java.net/2.2/docs/vendorProperties.html#xmldecl http://jaxb.java.net/2.2/docs/vendorProperties.html#xmldecl]
 
* Background Info:  [http://jaxb.java.net/2.2/docs/vendorProperties.html#xmldecl http://jaxb.java.net/2.2/docs/vendorProperties.html#xmldecl]
* Same as Marshaller.JAXB_FRAGMENT
+
* Opposite of Marshaller.JAXB_FRAGMENT (no bug entered)
  
 
== Future ==
 
== Future ==

Revision as of 13:52, 16 May 2012

Design Documentation: JAXB RI Extensions

ER 359251

In the JAXB RI, developed by Sun, there are a series of "proprietary" extensions that are available to provide advanced JAXB functionality outside of the JAXB spec (these extension classes reside in the com.sun.xml.bind and com.sun.internal.xml.bind packages).

This page will track the various JAXB Extensions that we want to bring into MOXy.

Jan. 2012: Other extension properties: http://jaxb.java.net/2.2/docs/vendorProperties.html

Goal

Our intent is to support these extensions as is, so that MOXy can be a drop in replacement for the JAXB RI.

To Do

XML Headers

Canonicalization

Object Identity Config

Completed

Test Get/Set For All Properties

  • We need to ensure that we test getting all these properties as well as setting them.
  • COMPLETE : org.eclipse.persistence.testing.jaxb.properties.PropertyTestCases

AccessorFactory (2.4 only)

CycleRecoverable (2.4 only)

XmlLocation (2.4 only)

NamespacePrefixMapper (2.3.3 and 2.4)

IDResolver (2.3.3 and 2.4)

IndentString (2.3.3 and 2.4)

CharacterEscapeHandler (2.3.3 and 2.4)

XML Declaration Control (2.3.3 and 2.4)

Future

The following items are of low priority and will be pushed out to a future release.

OverrideAnnotationOf

  • Allows for more flexible mapping (?)
  • Doesn't work if the field to override is not named "content", customization doesn't work (RI)
  • mgrebac: "The above annotation was actually used only for a very specific case of supporting usecase with XmlMixed, and is actually even not expected to be used outside of xjc."

Locatable

  • Seems to be mainly used internally by the RI
  • Interface only defines get methods... is user resonsible for setting up com.sun.xml.bind.v2.runtime.Location objects? Is this even meant to be a user-feature?
  • mgrebac: "No, this is as well not meant to be user feature, is usable for xjc itself and plugins to point to correct source when there is a failure."

XmlIsSet

  • Doesn't work in RI
  • Deprecated in the RI, no need to implement since we have XmlIsSetNullPolicy?
  • mgrebac: "Correct - deprecated, unused, we shall be able to remove it safely at this point actually."