カスタムファンクションを使用すると,任意のJavaプログラムをファンクションとして使用できます。uCosminexus Service Architectが提供するほかのファンクションでできる加工以外の加工をしたい場合にカスタムファンクションを使用します。
カスタムファンクションを使用して値を加工する方法については,「7.5.19 ユーザが作成した任意のJavaプログラムを呼び出す」を参照してください。
ここでは,カスタムファンクションから呼び出すJavaプログラムの作成方法について説明します。なお,カスタムファンクションでは,呼び出すJavaプログラムのことを変換ファンクションと呼びます。
変換ファンクションは,次の手順で作成します。
- 変換ファンクション定義ファイルの作成
変換ファンクションの構成を定義した変換ファンクション定義ファイルを作成します。変換ファンクション定義ファイルの作成方法については,「7.9.1 変換ファンクション定義ファイルの作成」を参照してください。
- Java雛形ファイルの生成
作成した変換ファンクション定義ファイルを基に,Javaプログラムのコーディング時に使用するJava雛形ファイルを生成します。Java雛形ファイルの生成方法については,「7.9.2 Java雛形ファイルの生成」を参照してください。
- Javaプログラムのコーディング,ビルド,およびデバッグ
Java開発ツールを使用して,Javaプログラムのコーディング,ビルド,およびデバッグを実施します。Javaプログラムのコーディング,ビルド,およびデバッグ方法については,「7.9.3 Javaプログラムのコーディング,ビルド,およびデバッグ」を参照してください。
- Javaプログラムのパッケージング
ビルドツールを使用して,作成したJavaプログラムをjarファイルにパッケージングします。Javaプログラムのパッケージング方法については,「7.9.4 Javaプログラムのパッケージング」を参照してください。
- 注意
- 呼び出すJavaプログラムの引数の数に応じてメモリ所要量(スタックメモリ)が増加します。そのため,引数が多いとスタックオーバーフローのエラーが発生するおそれがあります。引数は,多くても10個程度を目安としてください。
- Javaプログラムの呼び出し時に確保したリソースは,処理が終了しても保持し続けるため,システム全体に高い負荷がかかった場合に,Javaヒープ不足やPermヒープ不足などが原因でOutOfMemoryErrorが発生することがあります。そのため,OutOfMemoryErrorが発生したときに適切にリソースを解放する処理や,ロールバックなどのエラー処理を実装しておく必要があります。
- <この節の構成>
- 7.9.1 変換ファンクション定義ファイルの作成
- 7.9.2 Java雛形ファイルの生成
- 7.9.3 Javaプログラムのコーディング,ビルド,およびデバッグ
- 7.9.4 Javaプログラムのパッケージング
All Rights Reserved. Copyright (C) 2008, 2011, Hitachi, Ltd.