2

如何将对象从 SOAP 处理程序发送到 Web 服务?我知道我可以修改 SOAP 消息,但我正在尝试将整个 SOAP 消息发回。在 Web 服务中,我无权访问 SOAP 信封。此外,这是实现 wsdl,我无法更改作为特定 XML 类型的参数类型。所以我正在考虑在 SOAP 处理程序和 Web 服务之间使用某种并行消息传递机制。

4

1 回答 1

2

在 SOAP 处理程序中,

public boolean handleMessage(SOAPMessageContext mc) {
...
ByteArrayOutputStream out = new ByteArrayOutputStream();
SOAPMessage soapMsg = mc.getMessage();

mc.put("soapMsg", out); 
mc.setScope("soapMsg", MessageContext.Scope.APPLICATION);  
...
}

在网络服务中:

MessageContext messageCtx = context.getMessageContext();
String doc = (messageCtx.get("soapMsg")).toString();
于 2012-12-14T21:59:49.307 回答