第4章

ルールエディタとマクロエディタ

この章では、exteNd Directorのルールを作成したり編集したりする方法について説明します。この章は、次の節で構成されています。

For more information    exteNd Directorアプリケーションでのルール使用に関する基礎的な情報については、を参照してください。

 
Top of page

ルールエディタへのアクセス

ルールエディタでは、アプリケーションのポートレットまたはJSPページで使用するルールを作成できます。事前定義された条件とアクションから選択することによってルールを作成します。各ルール定義は、exteNd Directorプロジェクト内の指定されたディレクトリにXMLファイルとして保存されます。

Procedure ルールエディタにアクセスする

  1. exteNd Directorメニューから、[ファイル]>[新規]の順に選択します。

  2. [新規ファイル]ダイアログボックスで、[Rules Engine]タブを選択します。

    wbREeditors

  3. [ルール]アイコンを選択します。

    ルールエディタが右上のパネルに表示されます。

    wbRERuleEditor

 
Top of section

ルールツリービューについて

視覚的には、ルールは結果を生成する1つまたは複数の条件(時間)と1つまたは複数のアクション(実行)を結合したものです。ルールの形式は次のとおりです。

  When the combination of some conditions is true, 
     Do some actions; 
  Otherwise Do some other actions.

条件-実行の各ステートメントは、「ノード」と呼ばれ、XMLのDecisionノードにマップされます。また、ケースの使用で説明されているように、親ノード内にケースステートメントを埋め込むこともできます。

[その他の場合に実行]セクションは、ルール内のすべてのノードがfalseに評価された場合にのみ実行されます。

 
Top of section

ルールの命名

ルールを起動する場合、ルール名を呼び出します。

識別子の一部としてルールの所有者を指定できます。これによって、アプリケーションごとにルールを整理することができ、他のアプリケーションと名前が競合する可能性を回避できます。Rule APIを使用して、所有者に関連付けられているルールにアクセスできます。

Procedure ルールを命名する

  1. exteNd Directorで、ルールエディタを開きます。

  2. [ID]テキストボックスにルール名を入力します。例は次のとおりです。

    myrule

  3. (オプション)所有者を指定するには、ownername.rulenameの形式を使用します。例は次のとおりです。

    myapp.myrule

  4. (オプション)[説明]テキストボックスに説明を入力します。

 
Top of page

条件の使用

条件は、trueまたはfalseを返す論理が含まれるJavaクラスです。インストール済み条件はJavaBeanとして実装されており、多くの場合、関連するプロパティを設定できます。ルールに対して複数の条件を追加することができ、さまざまな方法でこれらの条件を操作できます。

デフォルト条件   条件のデフォルト値は、時間:オンです。たとえば特定のタイプのパイプラインに対して、常に関連付けられたアクションを実行する場合は、デフォルトのままにして、[実行]セクションのアクションを選択することができます。

一連の条件の再使用   一連の条件を他のルールで再使用したい場合は、マクロを作成します。詳細については、条件とアクションマクロの使用を参照してください。

Procedure 条件を追加する

  1. ルールエディタで、条件を入力する[時間]セクションを選択し、右クリックして条件のポップアップメニューを表示します。

    wbREConditonMenu

  2. [条件を追加]を選択します。

    条件のプロパティパネルが表示されます。ドロップダウンリストに、インストール済みのすべての条件と、ユーザが作成および展開したカスタム条件の一覧が表示されます。

  3. 目的の条件を選択します。

    条件に対して設定可能なプロパティがパネルに表示されます。

    For more information    インストール済み条件の使用に関する詳細については、を参照してください。

  4. 必要に応じてプロパティを設定し、パネルを終了します。

    条件の説明がルールエディタに表示されます。たとえば、Check Month条件を選択した場合は、次のような結果が表示されます。

    wbREConditonExample

Procedure 条件を追加する

  1. ルールエディタで、追加する条件の下にある条件の説明を選択します。一番上に条件を追加するには、適切な[時間]要素を選択します。

  2. 右クリックして、ポップアップメニューから[条件を追加]を選択します。

  3. 条件を追加するの説明に従って、条件を追加します。

    デフォルトでは、条件はAND演算子を使用して追加されます。つまり、[実行]セクションが実行されるためには、この条件と前の条件がtrueである必要があります。

処理に使用する論理演算子の選択   連続する複数の条件がある場合、いずれかの条件がtrueである必要があるときはOR演算子を、1つの条件がfalseである必要があるときはNOT演算子を指定することができます。

Procedure 演算子ANDとORを切り替える

  1. 演算子を含む条件を選択します。

  2. 右クリックして、ポップアップメニューから[および/または]を選択します。

Procedure 演算子NOTとNOTを切り替える

  1. 演算子を追加または削除する条件を選択します。

  2. 右クリックして、[NOT/NOT]を選択します。

 
Top of section

条件の編集および削除

次の表は、ルールエディタで条件を編集するその他の方法の一覧を示します。

内容

実行する操作

条件を上下に移動

  1. 移動する条件を選択します。

  2. 右クリックして、ポップアップメニューから[上へ移動]または[下へ移動]を選択します。

条件のプロパティの編集

  1. 編集する条件を選択します。

  2. 右クリックして、ポップアップメニューから[編集]を選択します。

    条件のプロパティパネルが表示されます。

  3. プロパティを編集し、パネルを閉じます。

条件の削除

  1. 削除する条件を選択します。

  2. マウスを右クリックして、ポップアップメニューから[削除]を選択します。

 
Top of section

条件の無効化

条件を評価されないようにしたいがルールからは削除したくない場合、条件を無効にできます。

Procedure 条件のアクティブ/非アクティブを切り替える

  1. 条件を選択します。

  2. 右クリックして、ポップアップメニューから[アクティブ/非アクティブ]を選択します。

 
Top of page

アクションの使用

アクションは、ルール内で関連付けられている条件に基づいて処理を行うJavaクラスです。アクションは、Decisionノードの[実行]セクションおよび[その他の場合に実行]セクションに追加されます。ノードの[時間]セクションがtrueと評価された場合、[実行]セクションがアクティブになります。[時間]セクションがfalseの場合は、[その他の場合に実行]セクションが実行されます。

インストール済みアクションの多くに対して、ルールエディタを使用して関連するプロパティを設定できます。また、アクション内にケースを埋め込み、Decisionノード間での処理を制御することができます。

デフォルトアクション   アクションのデフォルト値は、Return TRUEです。

他のアクション(Return FALSEを含む)を指定するには、アクションを追加する必要があります

Procedure アクションを追加する

  1. ルールエディタを開いたまま、アクションを入力する[実行]セクションまたは[その他の場合に実行]セクションを選択し、右クリックして条件を表示します。

  2. [アクションを追加]を選択します。

    アクションのプロパティパネルが表示されます。ドロップダウンリストに、インストール済みのすべてのアクションと、ユーザが作成および展開したカスタムアクションの一覧が表示されます。

  3. 目的のアクションを選択します。

    条件に対して設定可能なプロパティがパネルに表示されます。

    For more information    プロパティの詳細については、を参照してください。

  4. 必要に応じてプロパティを設定し、パネルを終了します。

    アクションの説明がルールエディタに表示されます。たとえば、DenyAccessアクションを選択した場合は、次のような結果が表示されます。

    wbREActionExample

このノードにさらにアクションを追加するには、この手順を繰り返します。

Procedure アクションのケースを追加する

  1. ルールエディタで、ケースを挿入するアクションを選択します。

  2. 右クリックして、ポップアップメニューから[ケースを追加]を選択します。

 
Top of section

アクションの編集および削除

この節では、ルールエディタでアクションを編集するその他の方法について説明します。

内容

実行する操作

アクションを上下に移動

  1. 移動するアクションを選択します。

  2. 右クリックして、ポップアップメニューから[上へ移動]または[下へ移動]を選択します。

アクションのプロパティの編集

  1. 編集するアクションを選択します。

  2. 右クリックして、ポップアップメニューから[編集]を選択します。

    アクションのプロパティパネルが表示されます。

  3. プロパティを編集し、パネルを閉じます。

アクションの削除

  1. 削除するアクションを選択します。

  2. マウスを右クリックして、ポップアップメニューから[削除]を選択します。

 
Top of section

アクションの無効化

条件を評価されないようにしたいがルールからは削除したくない場合、条件を無効にできます。

Procedure アクションのアクティブ/非アクティブを切り替える

  1. アクションを選択します。

  2. 右クリックして、ポップアップメニューから[アクティブ/非アクティブ]を選択します。

 
Top of page

ケースの使用

時間-実行ステートメントをペアレントノードに追加して、ルール内でケースステートメント(またはチャイルドノード)を作成することができます。ケースを追加すると、ルールのツリーコントロールが展開されます。ケースは、論理の最上位(時間)レベル、または埋め込み(実行)レベルで追加できます。

wbRECase

ケースの処理の流れは、次の2つの方法で処理できます。

Procedure ケースをルールに追加する

  1. ケースを追加する場所で、[時間]セクション、[実行]セクション、または[その他の場合に実行]セクションを選択します。

  2. 右クリックして、ポップアップメニューから[ケースを追加]を選択します。

    ルールエディタによってDecisionノード(時間-実行ステートメント)が追加されます。

  3. 追加の各ケースに対して、Step 2を繰り返します。

  4. ルールエディタを使用して、各ノードに対して条件およびアクションを追加します。

Procedure ケースの処理値を切り替える

  1. 変更する[実行]セクションを選択します。

  2. 右クリックして、ポップアップメニューから[ブレーク/続行]を選択します。

 
Top of section

ケースの説明の追加

多くのケースが含まれる複雑なルールを使用している場合、分かりやすくするために各ルールに説明を追加できます。説明は、ケースを開始する[時間]セクションの横に表示されます。

Procedure ケースの説明を追加する

  1. 説明を追加するケースの[時間]セクションを選択します。

  2. 右クリックして、ポップアップメニューから[説明の編集]を選択します。

  3. ダイアログボックスに説明を追加して、[OK]をクリックします。

    説明がルールエディタに表示されます。

 
Top of section

他のケースコマンドの使用

ルールエディタでは、ケースを操作するために、他にもさまざまな方法が提供されています。

Procedure 他のケースコマンドの使用

  1. ケースの[時間]セクションを選択します。

  2. 右クリックして、ポップアップメニューから適切なコマンドを選択します。

    内容

    実行する操作

    ケースの削除

    [ケースの削除]をクリックします。

    ケースの無効化/有効化

    [アクティブ/非アクティブ]をクリックします。

    ケースのコピー

    [ケースをコピー]をクリックします。

    ケースの貼り付け

    貼り付ける場所を選択して、[ケースの貼り付け]をクリックします。

    ケースを論理内で1レベル上に移動

    [ケースを上へ移動]をクリックします。

    ケースを論理内で1レベル下に移動

    [ケースを下へ移動]をクリックします。

 
Top of page

ルールのテスト、編集、および保存

 
Top of section

ルールのテスト

ルールを展開する前に、次のような複数の方法でルールをテストできます。

[ルールの実行]コマンドの使用

[ルールの実行]コマンドは、ルールの戻り値を開発環境出力ペインに表示します。このコマンドを使用して、ルールが各論理ポイントで正しい値を返していることを検証します。[ルールの実行]コマンドでは、HTMLデータなどの実際の戻り値は表示されません。

Procedure ルールを実行する

ヒント:   インストールされているMyPortalアプリケーションのRuleWrapperポートレットを 使用すると、HTMLを返す任意のルールの結果を表示できます。

 
Top of section

ルールの保存と編集

Procedure ルールを保存する

  1. ルールエディタでルールを開いたまま、exteNd Directorメニューから[ファイル]>[保存]の順に選択するか、または<Ctrl+S>キーを押します。

    ルール定義フォルダの内容がプロジェクトリソースセットに表示されます。

  2. ルールを保存し、ダイアログを終了します。

Procedure ルールを編集する

  1. プロジェクトのルールXML記述子の場所に移動します。

  2. XMLファイルをダブルクリックします。

 
Top of page

条件とアクションマクロの使用

マクロを使用すると、条件とアクションを再利用可能なグループに保存できます。たとえば、複数の条件を使用する標準的な論理が存在するとします。同様に、異なる条件下で起動させたい独立したアクションのグループもあるとします。マクロを使用すると、単一の条件とアクションを使用する柔軟性を保ちながら、より細かく整理することができます。

各マクロはXMLファイルとして保存されます。マクロを作成した後、このマクロをルールエディタの条件とアクションに追加できます。

 
Top of section

条件マクロの使用

この節では、条件マクロを作成する方法と、条件マクロをルールで使用する方法について説明します。

Procedure 条件マクロを作成する

  1. exteNd Directorメニューから、[ファイル]>[新規]の順に選択します。

  2. [新規ファイル]ダイアログボックスで、[Rules Engine]タブを選択します。

  3. [条件マクロ]アイコンを選択します。

    wbRECMacroIcon

    条件マクロエディタが表示されます。

    wbREConditonMacro

  4. マクロエディタの一番上で名前および説明を指定します。

    指定した名前は、マクロXMLファイルのデフォルトのファイル名になります。

  5. ツリービューで[時間]セクションをクリックします。

  6. [条件を追加]を選択します。

    条件のプロパティパネルが表示されます。

  7. 条件を追加するの説明に従って、ドロップダウンから条件を選択します。

  8. 他の条件を追加するには、既存の条件を選択して右クリックします。

  9. 条件を追加するの説明に従って、条件を追加します。

  10. 処理に使用する論理演算子の選択の説明に従って、演算子を選択します。

  11. 条件の編集および削除の説明に従って、条件を編集、移動、または削除します。

条件マクロの保存と編集

条件マクロを保存する際、exteNd Directorによって、プロジェクトのリソースセットの適切なサブディレクトリが開かれます。

Procedure 条件マクロを保存する

  1. 条件マクロエディタでマクロを開いたまま、exteNd Directorメニューから[ファイル]>[保存]の順に選択するか、または<Ctrl+S>キーを押します。

    rule-conditions-macroフォルダの内容がプロジェクトリソースセットに表示されます。

  2. マクロを保存し、ダイアログを終了します。

Procedure 条件マクロを保存する

  1. 条件マクロ記述子の位置に移動します。

  2. ファイルをダブルクリックします。

ルールでの条件マクロの使用

マクロを適切なディレクトリに保存した後、ルールで使用できます。

Procedure ルールで条件マクロを使用する

  1. ルールエディタでルールを開きます。

  2. マクロを追加する[時間]セクション内の位置を選択します。

  3. 右クリックして、[マクロの挿入]または[マクロを追加]を選択します。

    条件マクロ記述子のドロップダウンリストが表示されます。

    wbREmacroSelect-C

  4. マクロを選択して、[OK]をクリックします。

Procedure ルール内でマクロを削除、無効化、または移動する

  1. ルールエディタでマクロを選択し、右クリックします。

  2. ポップアップメニューから適切なコマンドを選択します。

 
Top of section

アクションマクロの使用

この節では、アクションマクロを作成する方法と、ルールエディタでアクションマクロを使用する方法について説明します。

Procedure アクションマクロを作成する

  1. exteNd Directorメニューから、[ファイル]>[新規]の順に選択します。

  2. [新規ファイル]ダイアログボックスで、[Rules Engine]タブをクリックします。

  3. [アクションマクロ]アイコンを選択します。

    wbREAMacroIcon

    アクションマクロエディタが表示されます。

    wbREActionMacro

  4. アクションマクロエディタの一番上で名前および説明を指定します。

    指定した名前は、マクロXMLファイルのデフォルトのファイル名になります。

  5. ツリービューで[実行]セクションをクリックします。

  6. 右クリックして、[アクションを追加]を選択します。

    アクションのプロパティパネルが表示されます。

  7. アクションを追加するの説明に従って、ドロップダウンメニューからアクションを選択します。

  8. アクセスを追加するには、既存のアクションを選択して右クリックします。

  9. アクションのケースを追加するの説明に従って、アクションを追加します。

  10. アクションの編集および削除の説明に従って、アクションを編集、移動、または削除します。

アクションマクロの保存と編集

アクションマクロを保存する際、exteNd Directorによって、プロジェクトのリソースセットの適切なサブディレクトリが開かれます。

Procedure アクションマクロを保存する

  1. アクションマクロエディタでマクロを開いたまま、exteNd Directorメニューから[ファイル]>[保存]の順に選択するか、または<Ctrl+S>キーを押します。

    rule-action-macroフォルダの内容がプロジェクトリソースセットに表示されます。

  2. マクロを保存し、ダイアログを終了します。

Procedure アクションマクロを編集する

  1. アクションマクロ記述子の場所に移動します。

  2. ファイルをダブルクリックします。

ルールでのアクションマクロの使用

アクションマクロを適切なディレクトリに保存した後、ルールで使用できます。

Procedure ルールでアクションマクロを使用する

  1. ルールエディタでルールを開きます。

  2. マクロを追加する[実行]セクション内の位置を選択します。

  3. 右クリックして、[マクロの挿入]または[マクロを追加]を選択します。

    アクションマクロ記述子のドロップダウンリストが表示されます。

    wbREmacroSelect-A

  4. マクロを選択して、[OK]をクリックします。

Procedure ルール内でマクロを削除、無効化、または移動変更する

  1. ルールエディタでマクロを選択し、右クリックします。

  2. ポップアップメニューから適切なコマンドを選択します。



Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...