JAXB und Namespace

  • Beitrags-Autor:
  • Beitrags-Kategorie:Java
  • Beitrags-Kommentare:0 Kommentare

Durch einen Fehler in der JAXB Reference Implementation (RI) wird die Annotation XmlNs für einen Namespace in der package-info.java auf Paketebene nicht korrekt verarbeitet. Abhilfe schafft eine Aktualisierung auf die Version 2.2.5.

Welche Bibliotheken für welchen Zweck eingebunden werden müssen, steht in den Release Notes.

Nach der Aktualisierung funktioniert folgendes Beispiel. In der erzeugten XML-Datei erhalten alle Elemente aus dem Namespace http://www.bmecat.org/bmecat/2005 das Prefix bmecat.

[code lang=“java“]@javax.xml.bind.annotation.XmlSchema(
namespace = „http://www.opentrans.org/XMLSchema/2.1“,
xmlns = {
@javax.xml.bind.annotation.XmlNs(prefix = „“,
namespaceURI = „http://www.opentrans.org/XMLSchema/2.1“),
@javax.xml.bind.annotation.XmlNs(prefix = „bmecat“,
namespaceURI = „http://www.bmecat.org/bmecat/2005“)
},
location =
„http://www.opentrans.org/XMLSchema/2.1 opentrans_2_1.xsd“,
elementFormDefault =
javax.xml.bind.annotation.XmlNsForm.QUALIFIED,
attributeFormDefault =
javax.xml.bind.annotation.XmlNsForm.UNQUALIFIED
)
package bob.core.opentrans;[/code]

Schreibe einen Kommentar

This site uses Akismet to reduce spam. Learn how your comment data is processed.