我正在开发一个使用SOAP请求来使用Web服务的应用程序。
有时我会收到此错误:
filters.LoggerFilter:92 - org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.Error: javax.xml.soap.SOAPException: Unable to create SAAJ meta-factoryProvider com.sun.xml.internal.messaging.saaj.soap.SAAJMetaFactoryImpl not found
奇怪的是我随机得到这个错误,但我似乎无法弄清楚原因。
我甚至添加了一个新的依赖项,但它似乎无法解决问题:
<dependency>
<groupId>com.sun.xml.messaging.saaj</groupId>
<artifactId>saaj-impl</artifactId>
<version>1.3</version>
</dependency>
对于那些在Java SDK 9+下使用Spring Boot在intellij IDEA中遇到此问题的人,您必须在VM参数中明确包含--add-modules java.se.ee
(编辑配置 - > VM选项)。 This answer可能有助于解决与新Java模块相关的其他导入问题
我在使用Java 11创建一个消耗SOAP请求的应用程序时遇到了同样的问题。
我添加了新的依赖项,它对我来说很好。
<dependency>
<groupId>com.sun.xml.messaging.saaj</groupId>
<artifactId>saaj-impl</artifactId>
<version>1.5.1</version>
</dependency>