私はキャメルが初めてで、プロキシの問題で立ち往生してしまいました。繰り返しの http 呼び出しからファイルへの結果を保存するために使用するルートがあります。
from("quartz://collector/test?cron=0+0/2+*+?+*+*")
.setHeader(Exchange.HTTP_METHOD, constant("GET"))
.setHeader(Exchange.HTTP_QUERY, constant("Id=50")
.to("http://www.anywebsite/question.php")
.setHeader(Exchange.FILE_NAME,constant("${date:now:yyyyMMddHHmmssSSS}.xml"))
.inOnly(someFolder);
私の問題は、通過するプロキシ (ホスト + ポート) を指定する必要があることです。そうしないと、情報を取得しようとして行き詰まります。「http.proxyHost」と「http.proxyPort」を routeBuilder から (getContext().setProperties を介して) 設定したり、「properties/property」タグでラップされた bundle-context.xml から設定したりするなど、さまざまな方法を試しました。エンドポイントに追加して、エンドポイントに設定しようとしました(httpenpointに設定できると言っているcamel-http&proxyHost=myHost&proxyPort=myPort
ドキュメント) 。
どれもうまくいきませんでした..
Il は、次のような Google で読んだ投稿から http コンジットをセットアップしようとしました (展開ターゲットに従っていずれかを選択します)。
<http-conf:conduit name="*.http-conduit">
<!-- when behind proxy -->
<http-conf:client Connection="close" ConnectionTimeout="3000" ReceiveTimeout="10000" ProxyServer="p-goodwat" ProxyServerPort="3128"/>
<!-- when no proxy -->
<http-conf:client Connection="close" ConnectionTimeout="3000" ReceiveTimeout="10000" />
</http-conf:conduit>
しかし、これも機能しませんでした...また、インストール先に応じて camel-context を更新することなく、自動的に実行できるようにしたいと考えています。
それで、それを設定し、動的に設定する方法がわかりますか?