Uploaded image for project: 'Spring Web Services'
  1. Spring Web Services
  2. SWS-627

Get rid of the JAXBElement when using Jaxb2Marshaller


    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: OXM
    • Labels:


      When using JAXB2, depending on the number of elements defined in the the XML schema, the unmarshalled objects can be either of type MyClass (exactly one element in the XML schema) or JAXBElement<MyClass> (more than one element) – see http://weblogs.java.net/blog/2006/03/03/why-does-jaxb-put-xmlrootelement-sometimes-not-always

      This would be very useful if the class org.springframework.oxm.jaxb.Jaxb2Marshaller of the Spring Framework could do the abstraction of the JAXBElement for us, ie. :

      • always returning an object of type MyClass when unmarshalling (by calling the getValue() method on the JAXBElement for us).
      • allowing passing an object of type MyClass when marshalling even though a JAXBElement<MyClass> would normally be expected.

      Then our code wouldn't have any code dependency upon the chosen marshaller (JAXB in this case).


        plecesne Pierre Lecesne created issue -


          • Assignee:
            arjen.poutsma Arjen Poutsma
            plecesne Pierre Lecesne
          • Votes:
            2 Vote for this issue
            2 Start watching this issue


            • Created: