我试图让我的JAX-WS Web服务生成内部类型的XSD。例如,我有返回Foo类型的WS方法:
Foo.java
public class Foo {
@XmlElement(name = "type")
private NestedType type;
public NestedType getType() {
return type;
}
public void setType(NestedType value) {
this.type = value;
}
public Foo() {
}
public static class NestedType {
@XmlElement(name = "name")
private String name;
public String getName() {
return name;
}
}
}
这会生成以下XSD代码段:
<xs:complexType name="Foo">
<xs:sequence>
<xs:element name="type" type="tns:NestedType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NestedType">
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
并使用wsimport实用程序生成独立的NestedType类。 我需要的是拥有如下内容:
<xs:complexType name="Foo">
<xs:sequence>
<xs:element name="type" minOccurs="0">
<xs:complexType name="NestedType">
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
让wsimport在Foo类中生成NestedType。