无法使用 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