Apache Camel
2.16.3を使用して、一部のデータをサードパーティのHTTP
エンドポイントにプッシュしようとしています。我々はHTTP4
コンポーネントを使用しています。 uri、メソッド、およびクエリパラメータをメッセージのヘッダとして設定しています。しかし、エンドポイントは、アンダースコア(_
)が含まれており、我々はこのような例外を取得している:java.lang.IllegalArgumentExceptionが:無効なURI:https://x_y.something.com/somePath?q_one=XXXX&q_two=YYYYYによって引き起こさCamel HTTP4でアンダースコアを含むURIを使用
。あなたは、HTTPエンドポイントをブリッジング/転送している場合は、エンドポイント上bridgeEndpointオプションを有効にします。エンドポイント[?https4://プレースホルダthrowExceptionOnFailure =偽]を、私は少し研究していると、その
_
は何かがあるように見えます
そのURIには存在すべきではありません。このwebsiteは実際にはhttps://x_y.something.com/somePath
は無効ですが、https://xy.something.com/somePath
が有効であると言います。
サードパーティのエンドポイントを変更できないため、アンダースコアをエスケープすることは可能ですか?そうでない場合は、他に解決策がありますか、またはこれについてはApache Camel
を放棄する必要がありますか?
あなたが作成したラクダのルートを共有できますか? '&bridgeEndpoint = true'を追加すると、作業が始まるはずです –
' Exchange.HTTP_URI'でヘッダーに 'URI'を設定しているので動作しません。エンドポイントに有効な 'URI'がありません。また、私は 'ルート 'を持っていない、私は' akka - ラクダ 'プロデューサーを使用しています。 – hveiga