我使用Spring创建了一个Web服务.在我的嵌入式tomcat服务器上运行它时工作正常.但是,当我将其打包为JAR文件并使用java -jar命令运行它时,我收到此异常.
我的服务发送一个简单的soap请求,服务器响应是:
"exception": "java.lang.NoClassDefFoundError",
"message": "javax/xml/soap/SOAPException",
Run Code Online (Sandbox Code Playgroud)
这是我在邮差中得到的回应.
任何我可以寻找问题的想法.
我有一个使用Java webstart技术的项目.我决定将Java版本从8升级到9.但是,我在编译时面临以下错误:
error: package javax.jnlp is not visible
import javax.jnlp.DownloadServiceListener;
^
(package javax.jnlp is declared in module java.jnlp, which is not in the module graph)
Run Code Online (Sandbox Code Playgroud)
我试图包括C:\Program Files\Java\jdk-9\lib\javaws.jar在类路径中,但仍然存在同样的问题.
从wsimport生成的代码无法在Java 10.0.2中编译。我们尝试了各种库(包括此处提到的库)。
对于大多数建议的库,编译失败并缺少以下软件包:
error: package javax.xml.ws is not visible
error: package javax.jws is not visible
Run Code Online (Sandbox Code Playgroud)
我们可以使用以下库克服编译错误:
compile group: 'javax.xml.ws', name: 'jaxws-api', version: '2.3.0'
compile group: 'javax.jws.jsr181-api', name: 'jsr181-api', version: '2.1.1'
Run Code Online (Sandbox Code Playgroud)
我们还包括以下jaxb库:
compile group: 'org.glassfish.jaxb', name: 'jaxb-core', version: '2.3.0.1'
compile group: 'org.glassfish.jaxb', name: 'jaxb-runtime', version: '2.3.0.1'
Run Code Online (Sandbox Code Playgroud)
但是,这在运行时由于NullPointerException而失败。
这是来自Service.java的代码:
protected Service(java.net.URL wsdlDocumentLocation, QName serviceName) {
delegate = Provider.provider().createServiceDelegate(wsdlDocumentLocation, // line 112
serviceName,
this.getClass());
}
Run Code Online (Sandbox Code Playgroud)
这是从为Web服务生成的代码中调用的:
public IMOTPWS(URL wsdlLocation) {
super(wsdlLocation, IMOTPWS_QNAME);
}
Run Code Online (Sandbox Code Playgroud)
这是示例再现的堆栈跟踪:
java.lang.NullPointerException
at javax.xml.ws.Service.<init>(Service.java:112)
at com.automationrhapsody.reststub.resources.IMOTPWS.<init>(IMOTPWS.java:47)
at com.automationrhapsody.reststub.RestStubApp.createImoSoapClient(RestStubApp.java:34) …Run Code Online (Sandbox Code Playgroud) java ×4
soap ×2
java-10 ×1
java-9 ×1
java-module ×1
jnlp ×1
spring ×1
spring-ws ×1
web-services ×1
xml ×1