我的代码有问题。 WSDL 文件由来自 apache cxf 的 wsdl2java 解析。现在我正在尝试连接网络服务,但仍然遇到空指针异常。
Exception in thread "main" java.lang.NullPointerException
at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:92)
at org.apache.cxf.jaxws.ServiceImpl.initializePorts(ServiceImpl.java:203)
at org.apache.cxf.jaxws.ServiceImpl.<init>(ServiceImpl.java:147)
at org.apache.cxf.jaxws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:97)
at javax.xml.ws.Service.<init>(Service.java:56)...
url 地址指向我下载 WSDL 文件的位置。为了构建 jar,我使用 Maven 和依赖项,例如:
- jaxws API
- CXF-RT-运输-http
- CXF-RT-前端-JAXWS
- CXF-RT-绑定-soap
带有 deps 的 jar 是由 maven-assemble-plugin 创建的
确保 wsdl 文件存在于那里,因为它是从那里下载的。
有什么建议么?谢谢你的帮助。
顺便提一句。这不是重复的问题,我发现任何解决方案都不适合我。
我使用时遇到了同样的问题影子罐子 in gradle。解决方案是显式合并总线扩展.txtMETA-INF/cxf/ 目录中的服务文件:
shadowJar {
archiveName = 'application.jar'
mergeServiceFiles{
path='META-INF/cxf'
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)