无法使用 xjc 编译器和绑定文件从 wsdl 文件生成顶级 JAXB
Cannot produce top level JAXBs from wsdl file using xjc compiler and binding file
我正在尝试从本地 wsdl 文件生成顶级 JAXB(使用绑定文件)。
这里给出了绑定文件(binding.xjb)的内容:
<jaxb:bindings
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
version="2.1">
<jaxb:globalBindings localScoping="toplevel"/>
我使用的命令如下:
xjc -wsdl getShops.wsdl -b binding.xjb
并给出 wsdl 文件 here
它成功创建了 jaxb 类 但它们嵌套 类 在一个文件中。
这是 xjc 编译器的 -wsdl 标志不受支持的功能还是我错过了什么?
从 wsdl 中提取 XSD 模式。
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://new.webservice.namespace" elementFormDefault="qualified">
<xs:element name="getShopsRequest">
<xs:complexType>
<xs:attribute name="ui" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="shoplist">
<xs:complexType>
<xs:sequence>
<xs:element name="shop" maxOccurs="unbounded" >
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="xs:integer"/>
<xs:element name="name" type="xs:string" />
<xs:element name="companyname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
运行命令:
xjc -wsdl getShops.xsd -b binding.xjb
输出控制台:
parsing a schema...
compiling a schema...
namespace/webservice/_new/GetShopsRequest.java
namespace/webservice/_new/ObjectFactory.java
namespace/webservice/_new/Shop.java
namespace/webservice/_new/Shoplist.java
namespace/webservice/_new/package-info.java
我正在尝试从本地 wsdl 文件生成顶级 JAXB(使用绑定文件)。
这里给出了绑定文件(binding.xjb)的内容:
<jaxb:bindings
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
version="2.1">
<jaxb:globalBindings localScoping="toplevel"/>
我使用的命令如下:
xjc -wsdl getShops.wsdl -b binding.xjb
并给出 wsdl 文件 here
它成功创建了 jaxb 类 但它们嵌套 类 在一个文件中。
这是 xjc 编译器的 -wsdl 标志不受支持的功能还是我错过了什么?
从 wsdl 中提取 XSD 模式。
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://new.webservice.namespace" elementFormDefault="qualified">
<xs:element name="getShopsRequest">
<xs:complexType>
<xs:attribute name="ui" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="shoplist">
<xs:complexType>
<xs:sequence>
<xs:element name="shop" maxOccurs="unbounded" >
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="xs:integer"/>
<xs:element name="name" type="xs:string" />
<xs:element name="companyname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
运行命令:
xjc -wsdl getShops.xsd -b binding.xjb
输出控制台:
parsing a schema...
compiling a schema...
namespace/webservice/_new/GetShopsRequest.java
namespace/webservice/_new/ObjectFactory.java
namespace/webservice/_new/Shop.java
namespace/webservice/_new/Shoplist.java
namespace/webservice/_new/package-info.java