189.5. 例
以下のスニペットでは、direct:george
エンドポイントに送信されるエクスチェンジのデータは、LIVERPOOL
という名前のシステム上のライブラリー BEATLES
内のデータキュー PENNYLANE
に配置されます。
別のユーザーが同じデータキューに接続して、データキューから情報を受け取り、mock:ringo
エンドポイントに転送します。
public class Jt400RouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { from("direct:george").to("jt400://GEORGE:EGROEG@LIVERPOOL/QSYS.LIB/BEATLES.LIB/PENNYLANE.DTAQ"); from("jt400://RINGO:OGNIR@LIVERPOOL/QSYS.LIB/BEATLES.LIB/PENNYLANE.DTAQ").to("mock:ringo"); } }
189.5.1. リモートプログラム呼び出しの例 (Camel 2.7)
以下のスニペットでは、Exchange が direct:work エンドポイントに送信するデータに 3 つの文字列が含まれます。これらの文字列は、ライブラリー assets 内のプログラム compute の引数として使用されます。このプログラムは、出力値を 2 番目と 3 番目のパラメーターに書き込みます。すべてのパラメーターが direct:play エンドポイントに送信されます。
public class Jt400RouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { from("direct:work").to("jt400://GRUPO:ATWORK@server/QSYS.LIB/assets.LIB/compute.PGM?fieldsLength=10,10,512&ouputFieldsIdx=2,3").to(“direct:play”); } }
189.5.2. キー付きデータ待ち行列への書き込み
from("jms:queue:input") .to("jt400://username:password@system/lib.lib/MSGINDQ.DTAQ?keyed=true");
189.5.3. キー付きデータ待ち行列からの読み取り
from("jt400://username:password@system/lib.lib/MSGOUTDQ.DTAQ?keyed=true&searchKey=MYKEY&searchType=GE") .to("jms:queue:output");