Java SOAPResponse不保留soap头

Java SOAPResponse不保留soap头,java,soap,jboss,soapheader,jax-rpc,Java,Soap,Jboss,Soapheader,Jax Rpc,当我从handler.handlResponse()添加soap头时,我可以看到在处理程序中添加的头,但这些头不会发送到客户端 这是我的handleResponse()方法 publicstaticfinalstringweb\u SERVICE\u NAMESPACE\u PREIFX=“dm”; 公共静态最终字符串WEB_SERVICE_NAMESPACE_URI=“urn:com.qwest.dms.dto”; 公共布尔HandlerResponse(MessageContext上下文)

当我从handler.handlResponse()添加soap头时,我可以看到在处理程序中添加的头,但这些头不会发送到客户端

这是我的handleResponse()方法

publicstaticfinalstringweb\u SERVICE\u NAMESPACE\u PREIFX=“dm”;
公共静态最终字符串WEB_SERVICE_NAMESPACE_URI=“urn:com.qwest.dms.dto”;
公共布尔HandlerResponse(MessageContext上下文)
{
debug(“TransactionLoggerHandler.HandlerResponse已调用”);
尝试
{
SOAPMessageContext-soapContext;
soapContext=(SOAPMessageContext)上下文;
SOAPMessage message=soapContext.getMessage();
SOAPHeader SOAPHeader=message.getSOAPHeader();
String version=“version”;
SOAPHeaderElement割台;
肥皂厂;
姓名;
debug(“添加值为[2.0]的soap头[“+version+”]);
soapHeader.addNamespaceDeclaration(Constants.WEB\u SERVICE\u NAMESPACE\u PREIFX,Constants.WEB\u SERVICE\u NAMESPACE\u URI)
肥皂头
=(SOAPHeaderElement)message.getSOAPPart().getEnvelope().getHeader().addChildElement(
“版本”,
Constants.WEB\u服务\u命名空间\u PREIFX,
Constants.WEB\u服务\u命名空间\u URI);
headerElement.addTextNode(“2.0”);
字符串headerName=“协议”;
字符串headerValue=“2.0.0”;
debug(“添加soap头[“+headerName+”]和值[“+headerValue+”]);
soapFactory=soapFactory.newInstance();
name=soapFactory.createName(headerName,
Constants.WEB\u服务\u命名空间\u PREIFX,
Constants.WEB\u服务\u命名空间\u URI);
header=soapHeader.addHeaderElement(名称);
header.addTextNode(headerValue);
message.saveChanges();
DmsUtil.printSOAPMessage(消息);
debug(“添加了值[2.0]的Soap头[“+version+”);
}
捕获(例外e)
{
错误(e);
}
返回true;
}
我看到这个方法的输出如下:
2
2.0.0
我从客户那里得到以下信息:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
  <env:Header/>
  <env:Body>
</env:Envelope>

我不知道为什么这些标题没有通过电线发送。感谢您的帮助。顺便说一句,我正在jboss4下使用jax rpc Web服务(我知道,我必须升级它,但由于一些限制:()

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
  <env:Header/>
  <env:Body>
</env:Envelope>