更改 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,并且不会隐藏其他任何问题)。
是否可以在 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,并且不会隐藏其他任何问题)。