ок, надеюсь, это кому-нибудь поможет, решение было в 2 раза.Во-первых, прокси-сервер не получил подтверждения из-за ведущего протокола def, http: // Я использовал только IP-адрес и кононическое имя без http: //, и мне удалось получить ошибку тайм-аута шлюза 504.Таким образом, конечная точка HTTP4 работает так, как она была настроена на
http4://myhost:443/path
http4://uaa-svc-prod.app-api.aws-usw02-pr.io:443/oauth/token
. Я смог заставить запрос работать, сначала установив жесткую конечную точку
<to uri="http4://uaa-svc-prod.app-api.aws-usw02-pr.io:443/oauth/token?throwExceptionOnFailure=false" />
, чтобы переопределить конечную точку http4настройкой
m.setHeader(Exchange.HTTP_URI, tokenUrl);
сработало.
Затем я попытался использовать настройку XML, которую он переопределил в маршруте.
<log message="HTTP4 POST headers: ${headers}" loggingLevel="DEBUG"/>
<setHeader headerName="CamelHttpUri">
<simple>${header.TOKENURL}?throwExceptionOnFailure=false</simple>
</setHeader>
<to uri="http4://uaa-svc-prod.app-api.aws-usw02-pr.io:443/oauth/token?throwExceptionOnFailure=false" />
это тоже сработало.:) однако я все еще получал ошибку тайм-аута 504 шлюзов.
Я пытался использовать https: // URI для переопределения URI
https://uaa-svc-prod.app-api.aws-usw02-pr.io/oauth/token
, и конечная точка http4: // была переопределена с помощью https: // URI, и теперь я получаюa CamelHttpResponseCode = 401, CamelHttpResponseText = Unauthorized
, поэтому он работает сейчас, happy happy joy joy ... в заключение не включайте определение протокола http: // в настройку прокси.Используйте либо IP, либо кононическое имя.
<camelContext
id="com.ge.digital.passthru.coreCamelContext"
trace="true"
xmlns="http://camel.apache.org/schema/blueprint"
allowUseOriginalMessage="false"
streamCache="true"
errorHandlerRef="deadLetterErrorHandler" >
<properties>
<property key="http.proxyHost" value="PITC-Zscaler.proxy.corporate.america.com"/>
<property key="http.proxyPort" value="80"/>
</properties>
при определении конечной точки HTTP4: // используйте синтаксис
http4:hostname[:port][/resourceUri][?options]
, а URI, установленный Exchange.HTTP_URI для обработки конечной точки, содержит https://myhost/pathкуда ты звонишь.
это то, что сработало для меня, надеюсь, это поможет новичкам, таким как я.Спасибо всем.