gpt4 book ai didi

java - 在 pom.xml 中定义 wsdl2java 参数

转载 作者:行者123 更新时间:2023-11-30 07:18:58 25 4
gpt4 key购买 nike

我是 Maven 和 CXF 的新手,我正在尝试设置 pom.xml 以使用 wsdl2java 生成代码。我有一些参数需要添加到 wsdl2java 命令中,但我不确定如何添加。

这是命令在终端中的样子:

wsdl2java -fe jaxws21 -d gen -validate -p com.example -faultSerialVersionUID FQCN -asyncMethods -bareMethods -exceptionSuper com.example.ExampleException wsdl/objects.wsdl

在我的 pom.xml 中,我有以下内容:

<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>${cxf.version}</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${project.build.directory}/generated-sources/cxf</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${project.basedir}/src/main/resources/wsdl/objects.wsdl</wsdl>
<wsdlLocation>classpath:wsdl/objects.wsdl</wsdlLocation>
</wsdlOption>
</wsdlOptions>
<defaultOptions>
<markGenerated>true</markGenerated>
<asyncMethods />
<bareMethods />
</defaultOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>

我很确定我正确地获得了 asyncMethods 和 bareMethods 参数,因为代码生成正常。不过,我对一些事情很好奇。

我想知道如何:

  • -fe 参数与 jaxws21 值一起添加

  • 添加 -p 参数和 com.example

  • 添加 -faultSerialVersionUIDFQCN

  • 添加具有 com.example.ExampleException 值的 -exceptionSuper

我已经尝试阅读 CXF 文档、SO、Google 和许多其他地方。我通过谷歌搜索“cxf pom 文件类型:xml”阅读了许多不同的 xml 文件。不幸的是,我无法弄清楚最后一点。

最佳答案

这是根据您的问题配置的样子:

... ...    

<defaultOptions>
<markGenerated>true</markGenerated>
<asyncMethods />
<bareMethods />
<!-- add the -fe argument together with the jaxws21 value -->
<frontEnd>jaxws21</frontEnd>
<!-- add the -p argument with the com.example value -->
<packagenames>
<packagename>com.example</packagename>
</packagenames>
<!-- add the -faultSerialVersionUID with the FQCN value -->
<faultSerialVersionUID>FQCN</faultSerialVersionUID>
<!-- add the -exceptionSuper with the com.example.ExampleException value -->
<exceptionSuper>com.example.ExampleException</exceptionSuper>
</defaultOptions>

... ...

您可以反编译 cxf-codegen-plugin.jar 并直接查看源代码,看看它是如何解析这些命令行参数的,更具体地说,是这个类:

org.apache.cxf.maven_plugin.wsdl2java.WsdlOption

希望这对您有所帮助。

关于java - 在 pom.xml 中定义 wsdl2java 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14946354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com