Veranlasse JAXB XJC, eine Wrapping-Klasse für einen einfachen Typ zu generieren

8

Ich habe die folgenden XML-Typen:

%Vor%

Der FaxNumber-Typ sieht so aus:

%Vor%

Die resultierende XML sollte in etwa so aussehen:

%Vor%

Wenn JAXB XJC zum Generieren von Java-Klassen von XSD ausgeführt wird, generiert es die folgende Klasse:

%Vor%

Ich möchte jedoch Faxnummer an eine solche zusammengesetzte Klasse binden:

%Vor%

Gibt es eine Möglichkeit, eine solche Bindung in JAXB-Bindungen xml zu definieren?

Hinweis: Leider habe ich keine Kontrolle über und kann die XSD nicht ändern

    
Adrian Mitev 04.10.2012, 06:29
quelle

3 Antworten

6

Ich glaube nicht, dass Sie xjc dazu bringen können, eine solche FaxNumber-Klasse für Sie zu erzeugen, aber Sie können es selbst schreiben und dann eine externe Bindedatei verwenden, um es an der richtigen Stelle einzufügen.

%Vor%

Bindungen:

%Vor%     
Ian Roberts 04.10.2012, 08:28
quelle
1

anstelle der Zeile <xsd:element name="FaxNumber" type="FaxNumber" maxOccurs="unbounded" /> in Ihrer Faxnummer xsd-Definition verwenden Sie <xsd:element name="FaxNumber" ref="FaxNumber" maxOccurs="unbounded" /> . Ich denke, das ist dein Problem

    
Jan Hruby 04.10.2012 06:41
quelle
1

Folgendes funktioniert für mich. Hoffe das hilft!

XSD :

%Vor%

Generiertes Objekt: FaxNumbers.java

%Vor%     
Anshu 04.10.2012 06:46
quelle

Tags und Links