当我注释了 java 类时
@javax.xml.bind.annotation.XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class UserdataType {
String username;
String street;
String address;
它将生成为
<xs:complexType name="userdataType">
<xs:sequence>
<xs:element name="username" type="xs:string" minOccurs="0"/>
<xs:element name="street" type="xs:string" minOccurs="0"/>
<xs:element name="address" type="xs:string" minOccurs="0"/>
因此,默认情况下 JAX-WS 始终在 XSD 文件中生成“序列”。
这迫使客户注意元素的确切顺序,这在某些情况下没有帮助。
有没有办法生成与序列不同的东西?
Add an XmlType http://download.oracle.com/javaee/5/api/javax/xml/bind/annotation/XmlType.html注释为空propOrder
, 像这样:
@XmlType(propOrder={})
然后它会生成一个xs:all
(无序)而不是序列。
<xs:complexType name="userdataType">
<xs:all>
<xs:element name="username" type="xs:string" minOccurs="0"/>
<xs:element name="street" type="xs:string" minOccurs="0"/>
<xs:element name="address" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)