问题
创建了一个JAX-WS处理程序,以将mac地址自动注入到客户端SOAP请求标头中:
文件:MacAddressInjectHandler.java
public class MacAddressInjectHandler implements SOAPHandler<SOAPMessageContext>{
@Override
public boolean handleMessage(SOAPMessageContext context) {
//......
//get mac address
String mac = getMACAddress();
//add a soap header, name as "mac address"
QName qname = new QName("http://ws.mkyong.com/", "mac address");
SOAPHeaderElement soapHeaderElement = soapHeader.addHeaderElement(qname);
soapHeaderElement.setActor(SOAPConstants.URI_SOAP_ACTOR_NEXT);
soapHeaderElement.addTextNode(mac);
soapMsg.saveChanges();
//......
}
//......
}
生成SOAP消息并将其发送到服务的提供者(或服务器)时,它立即返回以下错误消息: