从动态XSD文件生成多个Java类?

我已经在应用程序中使用xsd文件生成了Bean类。它仅生成一个带有根元素名称和其中声明了所有bean类的文件。但是我期望从单个xsd文件分类单独的bean。我的文件如下。

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="BusinessDocument">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Catalog">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Product">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="ProductID">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:string">
                            <xs:attribute name="Code" type="xs:string" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Description" />
                    <xs:element name="ShoppingBasketItem">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="Quantity">
                            <xs:complexType>
                              <xs:simpleContent>
                                <xs:extension base="xs:decimal">
                                  <xs:attribute name="UoM" type="xs:string" use="required" />
                                </xs:extension>
                              </xs:simpleContent>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="NetPrice">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Price">
                                  <xs:complexType>
                                    <xs:simpleContent>
                                      <xs:extension base="xs:decimal">
                                        <xs:attribute name="Currency" type="xs:string" use="required" />
                                      </xs:extension>
                                    </xs:simpleContent>
                                  </xs:complexType>
                                </xs:element>
                                <xs:element name="PriceUnit" type="xs:unsignedByte" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="LeadTime" />
                          <xs:element name="ItemText" />
                        </xs:sequence>
                        <xs:attribute name="RefVendorDescription" type="xs:unsignedByte" use="required" />
                        <xs:attribute name="RefmanufacturerDescription" type="xs:unsignedByte" use="required" />
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="VendorDescription">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="PartnerProductID">
                            <xs:complexType>
                              <xs:attribute name="Code" type="xs:string" use="required" />
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="PartnerID">
                            <xs:complexType>
                              <xs:attribute name="Code" type="xs:string" use="required" />
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="BuyerContract">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="ContractID" />
                                <xs:element name="ContractItemID" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                        <xs:attribute name="ID" type="xs:unsignedByte" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="ProductType" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

上面的文件已经生成了BusinessDocument.java文件,它具有所有bean类的代码。目录,产品等等。所有bean类代码也都存在于Businessdocument.java文件中。在这里,我们期望使用单独的bean类,例如BusinessDocument.java,Catalog.java,Product.java等。

任何人都可以帮助我吗? 如果提供的示例代码将不胜感激。

谢谢。

Jocelynsun 回答:从动态XSD文件生成多个Java类?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3122674.html

大家都在问