blu*_*mpb 4 java xsd choice jaxb xjc
当我运行xjc以生成表示此XSD代码段的Java类型时:
<xs:complexType name="fileUploadRequest">
<xs:choice>
<xs:element name="path" type="xs:string"/>
<xs:element name="file" type="xs:base64Binary"/>
</xs:choice>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
如果我sequence用可选元素指定了一个类,那么我会得到一个与它本来无法区分的类.
我想要一个具有一点智力的类型,这样我一次最多可以选择1个元素.setFile例如,如果我调用生成的方法,它应该使路径为null.是否有一些插件我可以用于代码生成器的明显要求?
binding.xml
您可以使用以下外部绑定文件来生成您要查找的属性类型:
<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
version="2.1">
<globalBindings choiceContentProperty="true"/>
</bindings>
Run Code Online (Sandbox Code Playgroud)
XJC电话
使用-b标志引用绑定文件.
xjc -b binding.xml schema.xsd
Run Code Online (Sandbox Code Playgroud)
生成的财产
现在将生成以下属性:
@XmlElements({
@XmlElement(name = "path", type = String.class),
@XmlElement(name = "file", type = byte[].class)
})
protected Object pathOrFile;
Run Code Online (Sandbox Code Playgroud)
欲获得更多信息
| 归档时间: |
|
| 查看次数: |
5322 次 |
| 最近记录: |