java - 带有 Spring Boot 错误的 JBOSS 上的 Soap 服务
问题描述
当我在 JBOSS 中部署 WAR 时,带有 Spring WS 的 Spring BOOT 出现此错误: java.lang.NoClassDefFoundError: com/sun/xml/messaging/saaj/soap/AttachmentPartImpl 我该如何解决这个问题?我尝试过这样但没有结果我在我写的 webapp/WEB-INF 中创建了一个 jboss-deployment-structure.xml
<?xml version='1.0' encoding='UTF-8' ?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
<deployment>
<exclusions>
<module name="com.sun.xml.messaging.saaj" />
</exclusions>
</deployment>
</jboss-deployment-structure>
在我的 pom 中,我添加了:
<dependency>
<groupId>com.sun.xml.messaging.saaj</groupId>
<artifactId>saaj-impl</artifactId>
<version>1.5.1</version>
<scope>provided</scope>
</dependency>
我在这里阅读了一个类似的主题,它说要这样做:
<bean id="messageFactory" class="org.springframework.ws.soap.saaj.SaajSoapMessageFactory">
<property name="messageFactory">
<bean class="com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl" />
</property>
</bean>
我试过了,但没有结果。
@Bean
public SaajSoapMessageFactory messageFactory() {
SaajSoapMessageFactory messageFactory = new SaajSoapMessageFactory();
SOAPMessageFactory1_1Impl messageFactory1_1=new SOAPMessageFactory1_1Impl();
messageFactory.setMessageFactory(messageFactory1_1);
return messageFactory;
}
JBoss 回复我:
java.lang.RuntimeException: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration.propertySourcesPlaceholderConfigurer Caused by: java.lang.RuntimeException: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration.propertySourcesPlaceholderConfigurer Caused by: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration.propertySourcesPlaceholderConfigurer Caused by: java.lang.IllegalStateException: Failed to introspect Class [PACKAGE.WebServiceConfig] from ClassLoader [ModuleClassLoader for Module \"deployment.ARTIFACT.war:main\" from Service Module Loader] Caused by: java.lang.NoClassDefFoundError: com/sun/xml/messaging/saaj/soap/ver1_1/SOAPMessageFactory1_1Impl Caused by: java.lang.ClassNotFoundException: com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl
但我正在使用 Spring Boot,我如何在 Spring Boot 中编写这个 Bean?
非常感谢。
解决方案
推荐阅读
- javascript - 代码 1 不起作用,但另一个是。第一个代码有什么问题?
- redactor - 如何在 Redactor 编辑器中更改图像路径?
- macos - 我在哪里可以找到 MacOS 中的应用程序光标文件?
- datetime - 在 Neo4j 中将日期时间转换为时间戳
- python-3.x - Flask 应用程序将环境变量打印为对象,而不是从 os.getenv 返回的字符串
- android - 从 React Native 弹出后,Android Studio 上的“Gradle 同步失败”
- python - 如何使用域过滤器从odoo13中模型中的所有其他记录中仅过滤掉Many2many字段中的选定记录
- flutter - 键盘在 PageView 中隐藏 TextField
- swift - Cocoa:如何更改下载目的地?迅速
- vuejs2 - 使用不同版本的传单 api 和 css 映射被破坏