У меня есть бизнес-сценарий, в котором мне нужно вызвать клиентскую службу SOAP, которая использует дополнительные параметры заголовка SOAP, используя Oracle SOA Suite 12c.Когда я тестирую веб-сервис независимо через SOAP UI, он показывает ниже схему как input-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://xmlns.client.org/Schema/Common/1.0/Common.xsd" xmlns:user="http://xmlns.uppcl.org/Schema/UserAccess/2.0/UserAccess.xsd"> <soapenv:Header> <wsse:Security xmlns:wsse="http://docs.demo-open.org/wss/2004/01/demo-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken xmlns:wsu="http://docs.demo-open.org/wss/2004/01/demo-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:Username>DemoUser</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">Demo@123</wsse:Password> </wsse:UsernameToken> </wsse:Security> <com:TransactionReference> <com:SourceSystemId>TXNSYSID</com:SourceSystemId> <com:TxID>0403216376127836</com:TxID> <!--Optional:--> <com:BusinessID>DTUIQS</com:BusinessID> </com:TransactionReference> </soapenv:Header> <soapenv:Body> <user:CheckUserRequest> <user:UserId>USER_ID</user:UserId> </user:CheckUserRequest>
Как мы видим дополнительные элементы заголовка wsse: Security> UsernameToken> Имя пользователя / Пароль, TransactionReference> SourceSystemId / TxID / BusinessID как узел XML.
Кроме того, я настроил адаптер SOAP в своем составном SOA, но у него есть только один входной аргумент UserId.Теперь я не могу понять, как я могу передать дополнительные заголовки (имя пользователя / пароль, SourceSystemId / TxID / BusinessID) в заголовок SOA для вызова целевого веб-сервиса в моем SOA-композите.