如何使用Axiom和XmlBeans在Spring WS中添加自定义SOAP标头

时间:2010-04-14 18:11:39

标签: spring-ws xmlbeans axiom

我正在使用Spring WS 1.5.8,XmlBeans进行编组/解组和AxiomSoapMessageFactory。我的应用。需要一个自定义SOAP标头。需要在SOAP Header中的数据是XmlBean(即下面代码中的sessionContext)。如何使用此XmlBeans XmlObject元素构造SOAP Header?我已经提到了我正在使用的WebServiceMessageCallback的代码,并且执行此代码导致“'prolog中不允许使用内容。'错误。

谢谢,

public class CustomMessageCallBack extends TransformerObjectSupport implements WebServiceMessageCallback {
public void doWithMessage(WebServiceMessage message) throws IOException, TransformerException {
SoapMessage soapMessage = (SoapMessage) message;
SoapHeader header = soapMessage.getSoapHeader();
StringSource headerSource = new StringSource(XmlBeanUtils.getValue(sessionContext) );
transform(headerSource, header.getResult());
}

}

1 个答案:

答案 0 :(得分:0)

错误通常意味着在 < ?xml ... 标记之前存在字节顺序标记(BOM)。

请参阅http://mark.koli.ch/2009/02/resolving-orgxmlsaxsaxparseexception-content-is-not-allowed-in-prolog.html