例如,我有一个像这样的 WSDL 定义结构:
<xsd:simpleType name="MyDayType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Sat"/>
<xsd:enumeration value="Wed"/>
</xsd:restriction>
</xsd:simpleType>
然后你有一些其他的对象,例如:
<xsd:complexType name="MyEntity">
<xsd:sequence>
<xsd:element name="dayType" type="v:MyDayType" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
现在,如果我使用 cxf-codegen-plugin,它将生成一个枚举“MyDayType”并在“MyEntity”类中引用它。通常这正是您想要的。
但是在我的情况下,我不能使用枚举,因为我在以后使用生成的 Java 代码的方式上受到限制。所以我希望 CXF 生成字符串而不是枚举。所以它只是将其他对象中所有出现的这种类型映射到一个字符串。在我的示例中,而不是:
public class MyEntity {
protected List<MyEntity> dayType;
/** Getters(/Setters) **/
}
我想拥有:
public class MyEntity {
protected List<String> dayType;
/** Getters(/Setters) **/
}
我怎样才能做到这一点?我宁愿以某种方式做到这一点,而无需编写我自己的自定义 jaxb 插件。