Mule ESB Flow для передачи параметров в Вызов SOAP Webservice
Я создал поток в MuleESB, который вызывает веб-сервис без каких-либо параметров, просто отправив ему имя пользователя, пароль и токен в свойстве, и он работает нормально.
Но во втором API я хочу опубликовать некоторые параметры при вызове мыльного запроса, но я не знаю, как его использовать, я пытался пройти через набор полезных данных, но не получил ответа.
2 ответа
Используйте потребителя Webservice и добавьте перед ним компонент сообщения преобразования. тем самым вы можете автоматически отобразить все параметры, которые требуются веб-службе SOAP, поскольку datasence автоматически загрузит мета-детали службы с помощью файла WSDL.
- Убедитесь, что вы выбрали application/xml в качестве типа контента в Postman или SOAP UI и выберите POST. Используйте CXF и выберите Operation as Proxy Service, предоставьте информацию. Selct и provode (WSDL,MTOM включен,SOAP-заголовки,SOAP 1.2)
- Убедитесь, что вы публикуете XML-запрос "POST" в разрешенных методах.
- Используйте 2 трансформатора. XML в DOM и DOM в XML.
Зарегистрируйте запрос, используя
#[Message.payloadAs(java.lang.String)]
Используйте преобразователь скриптов Groovy, чтобы получить всю полезную нагрузку.
def userSoapRequest = new XmlSlurper (). parseText (payload);
def userId = userSoapRequest.userId.text ();
message.setInvocationProperty ('userId', userId);
6. Восстановите userId, как указано выше, и аналогично для всех элементов. 7. Обрабатывайте их как хотите.
Надеюсь это поможет