java - 如何在一个 Jaxb2Marshaller 中处理更多 WSDL?

标签 java spring spring-boot gradle jaxb

我有一个 Spring Boot Gradle 项目并使用 JAXB 编码器来编码和解码 XML 请求/响应。

它适用于一组包路径:

@Bean
public SoapClient client(Jaxb2Marshaller marshaller) throws Exception {
    SoapClient client = new SoapClient();
            client.setDefaultUri("http://localhost:8088");
    client.setMarshaller(marshaller);
            client.setUnmarshaller(marshaller);
    client.setMessageSender(httpComponentsMessageSender());
    return client;
}

@Bean
public Jaxb2Marshaller marshaller() throws Exception {
    Jaxb2Marshaller marshaller = new Jaxb2Marshaller();

            //works
            //marshaller.setContextPaths("generated.identity.wsdl");

            //works
            //marshaller.setContextPaths("generated.network.wsdl");

            //does not work
            marshaller.setContextPaths("generated.identity.wsdl","generated.network.wsdl");

    return marshaller;
}

使用更多参数运行后,我收到以下错误消息:
xycontroller.VerificationControllerTest > checkByToken FAILED
    java.lang.IllegalStateException
        Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
            Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
                Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException
                    Caused by: org.springframework.beans.factory.BeanCreationException
                        Caused by: org.springframework.beans.BeanInstantiationException
                            Caused by: org.springframework.oxm.UncategorizedMappingException
                                Caused by: com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException  

谢谢你的帮助!

最佳答案

具有相同名称的类是由 2 WSDL 生成的。它们存在冲突,因此需要 JaxB 绑定(bind)。

关于java - 如何在一个 Jaxb2Marshaller 中处理更多 WSDL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52272146/

相关文章:

java - 兄弟位置改变时如何刷新android View 高度?

spring - 如何记录 Spring Data MongoDB 执行的查询?

java - 配置多个数据源时发现 IllegalTransactionStateException 预绑定(bind) JDBC 连接

java - 将 WebSecurityConfigurerAdapter 与 Spring OAuth2 和 user-info-uri 一起使用

java - 如何使用 Liferay Maven 的 Service Builder 创建插件?

java - 如何使用 docbase Root 从 server.xml 读取上下文参数

java - 我可以在 Grails 中使用 @Async 注释吗

java - spring boot jdbc服务器时区值 'Jerusalem Standard Time'无法识别

java - 在设备上运行的 PopupWindow 中聚焦 EditText 时出现异常

java - 服务的访问控制(设计决策)