以下模式應產生兩個原始int
字段在一個類Value
,而是產生用於元件和java.lang.Integer爲屬性一個原始int
。XJC生成整數代替INT
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.com/test" xmlns:test="http://www.example.com/test"
elementFormDefault="qualified">
<xsd:element name="values">
<xsd:complexType>
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:element ref="test:value" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="value">
<xsd:complexType>
<xsd:sequence>
<!-- Is generated as primitive int -->
<xsd:element name="element" type="xsd:int" />
</xsd:sequence>
<!-- Is generated as java.lang.Integer -->
<xsd:attribute name="attribute" type="xsd:int" />
</xsd:complexType>
</xsd:element>
</xsd:schema>
我已經通過JAXB documentation尋找任何表示,屬性和元素可以被不同地產生和一無所獲。
任何人都可以解釋這一點嗎?是否有修復使屬性生成爲原始的int
?
+1 - 你的頓悟是正確的。 –