В настоящее время я борюсь со следующей проблемой:переадресация запросы к внешней конечной точке от службы CFX
мне нужно пересылать запросы SOAP к внешней службе в особых случаях (решения на основе tenantId
, представленные в сообщении SOAP). Я создал перехватчик для этой задачи, чтобы извлечь tenantId
из запроса сообщения, получить назначение (каждый tenantId
присваивается собственному экземпляру службы, запущенному на другом сервере), и если никакого назначения не было сделано, мне нужно обработать запрос так же, как обычно.
В настоящее время я реализовал на этом пути: создать HttpUrlConnection
в перехватчике и направить запрос на внешнюю конечную точку (в случае, если есть присвоение) и принять outputStream
ответ и отправить ответ по HttpServletResponse.getOutputStream
... и т.д.
Мне также необходимо учитывать, что перехватчик должен использоваться с различным сервисом (tenantId
должен быть предоставлен в запросе SOAP).
Я также читал об объектах Провайдера и Отправления, которые не знают, как это должно работать.
Есть ли способ получить целевое обслуживание и порт (QNames) из входящего сообщения?
Я не могу использовать Camel в данный момент (допускается только CXF).