Как добавить собственный SOAP-заголовок в Spring WS с помощью Axiom и XmlBeans

Я использую Spring WS 1.5.8, XmlBeans для маршаллинга / демаршаллинга и AxiomSoapMessageFactory. Мое приложение. нужен собственный заголовок SOAP. Данные, которые должны быть в заголовке SOAP, представляют собой XmlBean (то есть sessionContext в приведенном ниже коде). Как создать заголовок SOAP с этим элементом XmlBeans XmlObject? Я упомянул код моего WebServiceMessageCallback, который я использую, и выполнение этого кода приводит к тому, что "Содержание не разрешено в прологе". ошибка.

Спасибо,

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 ответ

Ошибка обычно означает, что метка порядка байтов (BOM) присутствует раньше < ?xml ... тег.

См. http://mark.koli.ch/2009/02/resolving-orgxmlsaxsaxparseexception-content-is-not-allowed-in-prolog.html

Другие вопросы по тегам