intra-mart Accel Platform IM-LogicDesigner仕様書 第13版 2019-08-01

4.2.5.1.1. JavaScript

処理種別(タイプ)JavaScriptは、ユーザ定義タスクとしてJavaScriptを利用したタスクを定義します。
本章では処理種別(タイプ)JavaScriptに関する詳細仕様を説明します。

4.2.5.1.1.1. 入力値/返却値

処理種別(タイプ)JavaScriptでは、入力値/返却値をそれぞれ以下のように定義します。

4.2.5.1.1.1.1. 入力値

スクリプトに定義したエントリーポイント(実行関数)の引数を定義します。
入力値に定義した値は、エントリーポイントの引数の値として、スクリプト内で利用可能です。

4.2.5.1.1.1.2. 返却値

スクリプトに定義したエントリーポイント(実行関数)の戻り値定義します。
スクリプト内で戻り値を記述する際には、返却値と紐付ける必要があります。

4.2.5.1.1.2. スクリプト

処理種別(タイプ)JavaScriptにおいて、ユーザ定義タスクの実行処理部分のJavaScriptを定義します。
定義可能なJavaScriptは以下の通りです。
  • JavaScript1.7 のすべての機能
  • iAPのスクリプト開発向けim-BizAPI

4.2.5.1.1.2.1. エントリーポイント(実行関数)

処理種別(タイプ)JavaScriptがタスクとして実行される際、スクリプトに定義されたコードから、関数名がrunのものが実行されます。

4.2.5.1.1.2.2. 一部APIの利用制限設定

処理種別(タイプ)JavaScriptでは、以下の観点に基づきiAPの一部APIの利用を制限しています。
  • テナント内のデータアクセスのみを許可する。
    • システム管理、テナント管理系の振る舞いを持つAPIの実行は制限。
  • システムプロセスの呼び出しを行うことが出来るAPIは許可しない。

  • 外部スクリプトの呼び出しを行うことができるAPIは許可しない。

  • 画面遷移を伴うAPIは許可しない。

標準では、WEB-INF/classes/logic/jssp/blacklist配下に制限対象となるAPIを列挙しています。
新たにIM-LogicDesignerで利用するAPIの制限を追加したい場合、クラスパス上の/META-INF/logic/jssp/blacklistファイルに制限を行うAPI名を列挙してください。
IM-LogicDesignerは前者の設定と後者の設定をマージしたものを最終的な制限対象のAPIとして取り扱います。