【发布时间】:2016-03-24 10:42:12
【问题描述】:
我使用 SimpleWebServiceInboundGateway 来处理 SOAP 请求。
这是我的一段代码:
@Router(defaultOutputChannel = "unsupportedOperation", inputChannel = "wsRequestChannel")
public String route(Message message) {
String soapAction = (String)message.getHeaders().get(WS_SOAP_ACTION);
...
}
@Bean
public SimpleWebServiceInboundGateway wsInboundGateway(){
SimpleWebServiceInboundGateway simpleWebServiceInboundGateway = new SimpleWebServiceInboundGateway();
simpleWebServiceInboundGateway.setRequestChannelName("wsRequestChannel");
simpleWebServiceInboundGateway.setReplyChannelName("wsResponseChannel");
simpleWebServiceInboundGateway.setErrorChannelName("wsErrorChannel");
return simpleWebServiceInboundGateway;
}
传入的soap信封包含一个soap头:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
<soapenv:Header>
<myAuth>
<username>user</username>
<password>pass</password>
</myAuth>
</soapenv:Header>
<soapenv:Body>
...
我的路由器中的 Message 对象不包含标头数据。如何提取用户名和密码?
【问题讨论】:
标签: spring web-services soap spring-integration soapheader