Добавьте объект заголовка SOAP, используя чистый JAX-WS
Я пытаюсь реализовать простой клиент веб-службы дляPayPal Express Checkout API с помощьюJAX WS. PayPal Express Checkout API обеспечиваетWSDL файл, из которого я смог генерировать классы Java, используяCXF's wsdl2java полезность.
Из соображений аутентификации требует добавленияSOAP Header на каждый запрос. Этот заголовок довольно прост и должен выглядеть вот так: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ECSOAPAPIBasics#id09C3I0CF0O6
Сгенерировано изWSDL классы включаютebay.apis.eblbasecomponents.CustomSecurityHeaderType класс, который представляет заголовок, который мне нужно добавить к каждому запросу.
Вопрос в том, как добавить вручную созданный экземплярCustomSecurityHeaderType Класс для заголовка SOAP-запроса с учетом следующих условий:
I'm not very eager to use classes from com.sun.* package as mentioned in answer here: JAX-WS - Adding SOAP Headers (mainly because of possible portability issues between different JDK's) I don't want to manually marshal that object into nested javax.xml.soap.SOAPElement instances as mentioned in answer here: How do I add a SOAP Header using Java JAX-WS