2010-08-10 13 views

Répondre

5

Cela se fait à l'aide des annotations JAXB. Les points ci-dessous se réfèrent à votre modèle de domaine.

schéma Niveau

Vous pouvez spécifier des informations d'espace de noms de niveau de schéma en utilisant l'annotation de niveau package @XmlSchema:

@XmlSchema(namespace = "http://www.example.org", 
      elementFormDefault = XmlNsForm.QUALIFIED) 
package org.example; 

import javax.xml.bind.annotation.XmlSchema; 
import javax.xml.bind.annotation.XmlNsForm; 

L'annotation ci-dessus tirant parti elementFormDefault sera par défaut l'espace de noms de tous les éléments à "http://www.example.org" .

Type Niveau

Vous pouvez remplacer les espaces de noms au niveau du type en utilisant l'annotation @XmlType:

@XmlType(namespace="http://www.example.org/foo") 

Propriété/Champ Niveau

Et/ou vous pouvez spécifier l'espace de noms informations sur les annotations elles-mêmes:

  • @XmlAttribute (namespace = "http://www.example.org/bar")
  • @XmlElement (namespace = "http://www.example.org/bar")
  • @XmlElementWrapper (espace de nom = "http://www.example.org/bar")
  • @XmlRootElement (espace de nom = "http://www.example.org/bar")

Exemple

J'ai un billet de blog qui illustre ces concepts avec un exemple: