我有以下的XML類型:讓JAXB XJC產生的包裝類簡單類型
<xsd:element name="FaxNumbers" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="FaxNumber" type="FaxNumber" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
的FaxNumber類型如下:
<xsd:simpleType name="FaxNumber">
<xsd:restriction base="xsd:string">
<xsd:minLength value="1" />
</xsd:restriction>
</xsd:simpleType>
生成的XML應該是這樣的:
<FaxNumbers>
<FaxNumber>3878374</FaxNumber>
<FaxNumber>387833434</FaxNumber>
<FaxNumber>3878334</FaxNumber>
</FaxNumbers>
當運行JAXB XJC從XSD生成Java類時,它會生成以下類:
@XmlType(name = "FaxNumbers")
public class FaxNumbers {
/**
* No comment.
*/
@XmlElement(name = "FaxNumber", required = true)
protected List<String> faxNumber = new ArrayList<String>();
}
但是我想綁定FaxNumber複合類是這樣的:
@XmlType(name = "FaxNumbers")
public class FaxNumbers {
/**
* No comment.
*/
@XmlElement(name = "FaxNumber", required = true)
protected List<FaxNumber> faxNumber = new ArrayList<String>();
}
Where FaxNumber class looks like this:
public class FaxNumber{
@XmlValue
private String value;
}
有沒有辦法來定義這樣的JAXB綁定XML綁定?
注:不幸的是,我沒有控制權,不能更改XSD
不幸的是,我不控制和不能改變的XSD(將更新原帖)。 –
那麼我恐怕你在使用它之前被卡住了手動修改生成的java文件。如果您的情況可能 –
手動編輯生成的java文件可以正常工作。但是,當XSD更改並且我預先生成文件時,我必須每次手動執行更新。 –