使用来自WSDL的jaxws-maven-plugin通过HTTPS生成源代码

时间:2014-05-15 16:13:33

标签: java maven jaxws-maven-plugin

我通过HTTPS使用jaxws-maven-plugin生成源代码:

<executions>
    <execution>
        <id>wsdl_new_xxx-exec</id>
        <goals>
            <goal>wsimport</goal>
        </goals>
        <configuration>
            <sourceDestDir>${project.build.directory}/generated</sourceDestDir>
            <args>
                <arg>-B-XautoNameResolution</arg>
            </args>
            <wsdlUrls>
                <wsdlUrl>https://example.com/xxx.asmx?WSDL</wsdlUrl>
            </wsdlUrls>
            <packageName>x.y.z</packageName>
        </configuration>
    </execution>
</executions>

但是在构建期间我得到了:

  

[ERROR] sun.security.validator.ValidatorException:PKIX路径构建   失败:sun.security.provider.certpath.SunCertPathBuilderException:   无法找到所请求目标的有效证明路径

我知道解决方法是将证书添加到JRE密钥库,但问题是这将在CI系统上运行,该系统具有大量可能无法控制的节点。因此无法将证书安装到所有节点&#39;的JRE。

我怎么解决这个问题?无需使用WSDL文件和pom.xml。

1 个答案:

答案 0 :(得分:1)

这是一个简单的解决方案:在您的src/main/resources目录中存储WSDL的本地副本,并将其用作jaxws-maven-plugin的参考。