この例は、式から外部コード (Java™ クラスなど) および外部オブジェクトにアクセス可能にする方法を示します。外部オブジェクトとは、アプリケーションが式と通信するために作成するオブジェクトのことです。
式から外部コードにアクセスする前に、その外部コードを式からアクセス可能にしなければなりません。
インポートは、式で外部コードにアクセス可能にするための、プログラム言語固有の方法です。<import> エレメントには、ルール内の他の式で使用できるようインポートする外部モジュール (Java クラスなど) を指定する、特別な種類の式が含まれています。インポートは、ルール・セット・レベルまたはルール・ブロック・レベルで定義できます。
<import expressionLanguage="java"> import com.ibm.act.sample.StaticHelper; import com.ibm.act.test.Queue; </import>
import ステートメントではクラスの絶対パス名を使用する必要はありませんが、コンパイル時間を短縮するには絶対パス名を指定してください。例えば、 Java クラスを com.ibm.act.sample.* や com.ibm.act.* ではなく、com.ibm.act.sample.StaticHelper と指定します。
<onDetection> <action expressionLanguage="java"> StaticHelper.pageAdministrator("Too many login attempts for " + act_event.getAttribute("userID")); </action> </onDetection>
<onDetection> <action expressionLanguage="java"> Queue myQueue = (Queue)act_lib.getExternalContext("OutputQueueOne"); myQueue.enqueue(act_event); </action> </onDetection>