2012-05-22 17 views
7

ich eine einfache Java-Klasse habe ich mit JAXB bin mit Anmerkungen versehen:JAXB XmlAnyElement gesetzt Namespace-Attribut

class Foo { 
    @XmlAnyElement(lax=true) 
    List<Object> any; 
} 

Welche das folgende Schema erzeugt:

<xs:complexType name="foo"> 
    <xs:sequence> 
    <xs:any processContents="lax" maxOccurs="unbounded"/> 
    </xs:sequence> 
</xs:complexType> 

Gibt es eine Möglichkeit, das Namespace-Attribut festlegen für das <any> Element, so dass es erzeugt wie folgt:

+0

Haben Sie Glück, den Gruss hier zu finden? –

Antwort

1

einfügen ein Paket- info.java-Datei in Ihr foo-Klasse-Paket mit Inhalt wie:

@javax.xml.bind.annotation.XmlSchema(namespace = "urn:foo:v1", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) 
package java.ns.foo;