我的WSDL中有A
生成的两个类B
和cxf-codegen-plugin
。 A
继承自B
。
我想添加常见的方法,例如hashCode()
,equals()
...所以,我的POM中有以下配置:
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.6.0</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/wsdl/PeeringApi.wsdl</wsdl>
<extraargs>
<extraarg>-xjc-XhashCode</extraarg>
<extraarg>-xjc-Xequals</extraarg>
<extraarg>-xjc-Xsetters</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>${jaxb2.version}</version>
</dependency>
</dependencies> </plugin>
我有两个问题:
equals()
方法,该方法不会比较B
的属性(即不调用super.equals()
)?equals()
方法,该方法仅比较我指定的A
的某些属性(默认情况下,似乎所有属性都被比较)?由于
答案 0 :(得分:2)
我找到了一个解决方案,如下所述:http://confluence.highsource.org/display/J2B/JAXB2+Basics+Plugins。
您可以添加自定义绑定以指示JAXB2插件忽略某个属性。