Googleのデータベースから当社の複数のエンドユーザにデータを転送するために、Camelを使用しています。ラクラクには、OracleデータベースからPL/SQLを介して要求しているいくつかの休止エンドポイントが設定されています。Camel/JavaEE - 投稿後のURLパターンと投稿されたデータをRest endpointから次のルート/ webservicesに転送
残りのエンドポイントはsomeserver.net/{interfaceId}/{season}/post
のようになります。 Oracleデータベースからは、java Webサービスによって処理される識別子を持つコンマ区切りのリストを送信しています。
投稿されたデータを転送した後に、URLのパラメータをどのように使用することができないか、役立つ情報が見つかりませんでした。その後
<post uri="/{interfaceId}/{season}/post" produces="text/plain">
<to uri="direct:postWithSeason" />
</post>
私はデータやパラメータ{interfaceId}と{シーズン}を受け取り、someserver.net/hub/xml/{interfaceId}/{season}/post
のようなURLを持っている私たちのWebサービスに渡し、別のルートをしたい: は、これは私がエンドポイントの構成方法です。 Webサービスはエンドユーザに転送されるXMLファイルを作成しています。
ルートだから
<route id="fetchData">
<from uri="direct:postWithSeason" />
<setHeader headerName="CamelHttpMethod">
<constant>POST</constant>
</setHeader>
<setHeader headerName="CamelHttpUri">
<simple>http://serverWithWebservice.net/</simple>
</setHeader>
<setHeader headerName="CamelHttpPath">
<simple>hub/xml/{interfaceId}/{season}/payloadIds</simple>
</setHeader>
<to uri="http4:serverWithWebservice.net" />
<to uri="file:/someDirectory?fileName=someFileName.xml" />
</route>
ようになりますどのように私は、Webサービスがのカンマ区切りのリストに沿って呼ばれているルートへのPL/SQLプロシージャによって呼び出されるURLからパラメータを取得することができますpayloadIds? XML DSLを使用する代わりに、Javaでルートを構築するのはまったく問題ありません。
私はJavaEE、Camel、HTTPリクエストを数ヶ月間しか使用していないため、すべての基本について熟知していないため、問題解決のためのリソースを見つけることができませんでした。
感謝を構築し、これが機能しています! – Alex