更改 axis2 1.4 中生成的 类 的名称

Change name of generated classes in axis2 1.4

是否可以在 axis2(使用 adb)中更改生成的复杂类型绑定 classes 的名称?

冒犯xsd的是:

      <xsd:complexType name="System">
        <xsd:annotation>
          <xsd:documentation></xsd:documentation>
        </xsd:annotation>
        <xsd:complexContent mixed="false">
          <xsd:extension base="tns:SystemBase"/>
        </xsd:complexContent>
      </xsd:complexType>

这会导致 adb 生成内部系统 class。这很好,除了生成的存根还使用 Java 的系统 class (currentTimeMillis) 方法,有效地隐藏它 - 导致编译错误。

我想将 complexType "System" 映射到类似 _System 的对象。

我尝试了带映射的 -em 开关:

<?xml version="1.0" encoding="UTF-8"?>
<mappings dbf="adb">
    <mapping>
        <qname namespace="http://service.gov/schemas/AP/2014/06/01">System</qname>
        <value>_System</value>
    </mapping>
</mappings>

但它不起作用(qname 的命名空间属性与相关 xsd 架构的目标命名空间相匹配)。

对 wsdl2java 使用 -u 选项解决了最初的问题(系统 class,并且不会隐藏其他任何问题)。