【发布时间】:2016-11-09 12:49:39
【问题描述】:
我有一个基于 Spring Boot 的项目,使用 CXF 构建 SOAP Web 服务。
发送 SOAP 1.1 消息(使用 SOAPUI)工作正常,但是当我尝试发送 SOAP 1.2 消息(当然使用相同的 WSDL)时,我收到消息 "A SOAP 1.2 message is not valid when sent to a SOAP 1.1 only endpoint"。
该消息是自我解释的,但我不明白为什么我的端点不接受 1.2 消息。
我的 WSDL 包含正确的 soap12 绑定和命名空间。
在我的 spring @Configuration 类中,我将它添加到 CXF 端点 bean:
endpoint.setBindingConfig(new BindingConfiguration()
{
@Override
public String getBindingId()
{
return SOAPBinding.SOAP12HTTP_MTOM_BINDING;
}
});
这没有帮助。
随着我变得更加绝望,我尝试了@BindingType 和@SOAPBinding 注释,这当然不起作用,然后我尝试了SaajSoapMessageFactory 和SoapVersion.SOAP_12。没用。我在jaxws-maven-plugin 中尝试了<extension>true</extension><protocol>Xsoap1.2</protocol>。失败。
端点显然没有配置为接收 SOAP 1.2 消息。我如何做到这一点?
【问题讨论】:
标签: soap spring-boot wsdl cxf jax-ws