フローの中でJavaコードを実行するには

JavaInterpreterコンポーネント

Javaによる独自の処理を記述できるコンポーネントとして、JavaInterpreterコンポーネントがあります。また、マッパー関数にもJavaInterpreter関数が用意されており、マッパーでデータ加工する際にJavaコードを利用できます。

Javaコードを記述する (JavaInterpreterコンポーネント)

1.対象のフローを表示し、「ツール」タブのJavaInterpreterコンポーネント(「Java インタープリタ」)を配置して接続する

8-158-01.png

 

HINT

パラメーターの取得と設定
componentとcontextという2つの変数は事前にフローサービスで予約されて定義されていて、そこから入力ストリームやパラメーターを取得して処理を実行できます。パラメーターの定義は、JavaInterpreterコンポーネントのインスペクタの「パラメーター」タブを使って設定でき、マッパーで値を差し込んだり参照したりが可能です。パラメーターの取得には、予約変数componentのgetParameter(String) というメソッドを使用します。

 

2.「ソースコード」プロパティに、Javaのソースコードを記述する

8-158-02.png

 

3.出力ストリーム定義を設定する

8-158-03.png

ソースの記述は、基本的にクラス定義ができない以外はJava仕様と同じで、実行はインタープリタ形式です。
「入力をそのまま出力」プロパティが「いいえ」の場合は、ソースコード中でストリームを生成してreturnする必要があります。

 

Javaコードを記述する (JavaInterpreter関数)

1.フローを作成し、Mapperコンポーネントを接続してダブルクリックする

8-158-04.png

 

2.マッピングウィンドウのパレットの「制御」タブからJavaInterpreter関数(「Java インタプリタ」)をドラッグして配置する

8-158-05.png

 

HINT

カスタム関数またはカスタムコンポーネントを作成するには
JavaInterpreter関数またはJavaInterpreterコンポーネントを右クリックして表示されるメニューから、「カスタム関数」や「カスタムコンポーネント」を作成できます。この場合、コンパイルされたコードになるため、JavaInterpreterと比較して高速で動作します。

 

3.「ソースコード」プロパティに、Javaのソースコードを記述する

8-158-06.png

 

4.処理に合わせて入出力のフィールドやストリーム定義を設定する

8-158-07.png

JavaInterpreter関数では、入力はいくつでも受け付けることができ、入力なしでも使用可能です。出力は必ず必要です。 in/outという名前の変数が事前に本製品で予約されて定義されており、この変数から、入力値を取得したり、出力を設定したりできます。

 

この記事は役に立ちましたか?
1人中1人がこの記事が役に立ったと言っています

他のキーワードで検索する