【问题标题】:axistools-maven-plugin wsdl2java how to set different packages for each wsdlaxistools-maven-plugin wsdl2java 如何为每个wsdl设置不同的包
【发布时间】:2016-04-07 09:11:18
【问题描述】:

我想使用axistools-maven-plugin从wsdl生成java类。

现在我有了这段代码,它可以工作了:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>axistools-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>ax-ws-autogen</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>wsdl2java</goal>
            </goals>
            <configuration>
                <sourceDirectory>src/main/resources/wsdl</sourceDirectory>
                <wsdlFiles>
                    <wsdlFile>myfirstwsdl.wsdl</wsdlFile>
                </wsdlFiles>
                <packageSpaces>my.package.code.first</packageSpaces>
                <testCases>false</testCases>
                <serverSide>false</serverSide>
                <subPackageByFileName>false</subPackageByFileName>
                <outputDirectory>src/main/java</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

现在我需要使用另一个 wsdl。所以我想将它添加到这个插件中,但是在另一个包中。我该怎么办?

我看到我可以在&lt;wsdlFiles&gt;标签中添加wsdl文件,但是我不知道如何为新的wsdl添加新的包。

使用 CXF 我可以在 &lt;wsdlOptions&gt; 标签中设置不同的 wsdl 和包,但使用轴我不知道该怎么做。

你能帮帮我吗?

【问题讨论】:

    标签: web-services packages maven-plugin axis wsdl2java


    【解决方案1】:

    我解决了设置&lt;subPackageByFileName&gt; = true 并在通用包中更改&lt;packageSpace&gt; 的问题:

    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>axistools-maven-plugin</artifactId>
        <executions>
            <execution>
                <id>ax-ws-autogen</id>
                <phase>generate-sources</phase>
                <goals>
                    <goal>wsdl2java</goal>
                </goals>
                <configuration>
                    <sourceDirectory>src/main/resources/wsdl</sourceDirectory>
                    <wsdlFiles>
                        <wsdlFile>myfirstwsdl.wsdl</wsdlFile>
                        <wsdlFile>mysecondwsdl.wsdl</wsdlFile>
                    </wsdlFiles>
                    <packageSpace>my.package.code</packageSpace>
                    <testCases>false</testCases>
                    <serverSide>false</serverSide>
                    <subPackageByFileName>true</subPackageByFileName>
                    <outputDirectory>src/main/java</outputDirectory>
                </configuration>
            </execution>
        </executions>
    </plugin>
    

    这样我得到一个包含两个包的包my.package.code

    • my.package.code.myfirstwsdl 包含我的第一个 wsdl 的所有类;
    • my.package.code.mysecondwsdl 包含我的第二个 wsdl 的所有类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-09
      • 1970-01-01
      • 1970-01-01
      • 2011-06-14
      • 2013-02-18
      • 2015-11-21
      • 2021-04-26
      • 1970-01-01
      相关资源
      最近更新 更多