Sun Java ロゴ     前へ      目次      次へ     

Sun ロゴ
Sun Java™ System Identity Manager 7.0 配備ツール 

第 1 章
Identity Manager IDE の使用

Identity Manager 統合開発環境 (Identity Manager IDE) とは、使用している配備で Sun JavaTM System Identity Manager (Identity Manager) オブジェクトを表示、カスタマイズ、およびデバッグできる Java アプリケーションのことです。

ここでは、Identity Manager IDE の使用方法について説明します。この章で説明する内容は次のとおりです。


概要

Identity Manager IDE は、ご使用の環境で、オブジェクトをグラフィカルに XML ベースで表示します。このアプリケーションを使用して次のタスクを実行できます。

この節の残りの部分では、Identity Manager IDE 全般の高いレベルでの概要を示します。この情報は次のように構成されています。

主な機能

Identity Manager IDE によって提供される主な機能は、次のとおりです。

BPE と比較した場合の Identity Manager IDE

Identity Manager IDE は、完全に統合された NetBeans プラグインで、Identity Manager のビジネスプロセスエディタ (BPE) アプリケーションに代わるよう設計されています。Identity Manager IDE を使用した場合、BPE に比べて次の利点があります。


Identity Manager IDE のインストール

ここでは、Identity Manager IDE アプリケーションのインストールと設定の手順を説明します。

開始する前に

Identity Manager IDE を実行するには、ローカルシステムに次のものがインストールされている必要があります。

モジュールのインストール

Identity Manager IDE は、NetBeans に登録する必要のあるモジュールプラグインとしてパッケージ化されています。モジュールをインストールして登録するには、次の手順に従います。

  1. NetBeans 5.0 を開始します。
  2. NetBeans メニューバーで、「Tools」>「Update Center」の順に選択します。
  3. アップデートセンターウィザードが表示されたら (図 1-1)、「Install Manually Downloaded Modules」を選択して、「Next」をクリックします。
  4. 図 1-1 モジュールの場所を選択
    手動でモジュールをダウンロードするオプションを選択

  5. 次の「Select Location of Modules」パネルで、「Add」をクリックし、Identity Manager IDE NetBeans プラグインファイル (com-sun-idm-ide.nbm) を検出して選択します。このファイルは Identity Manager 配布パッケージの最上位ディレクトリにあります。完了したら、「Next」をクリックします。
  6. 「Select Modules to Install」パネルが表示されたら (図 1-2)、もう一度「Next」をクリックしてモジュールをダウンロードします。
  7. 図 1-2 インストールするモジュールの指定
    「追加」をクリックし、Identity Manager IDE .nbm モジュールを参照して選択します。

  8. Identity Manager IDE 使用許諾契約書が表示されたら、「Accept」をクリックします。
  9. 「Download Modules」パネルが表示され、ダウンロード中のモジュールの状態が表示されます。「Next」をクリックします。
  10. 「View Certificates and Install Modules」パネルが表示され (図 1-3)、ダウンロードしたモジュールが一覧で示されます。モジュール名の横にあるチェックボックスを有効にします。
  11. 図 1-3 証明書を表示するモジュールの選択
    チェックボックスを有効にして、インストールするモジュールを指定します。

  12. 署名のないモジュールをインストールするかどうかを確認するポップアップが表示されます。
    • モジュールのインストールを続行する場合は、「Yes」をクリックします。
    • インストールを続行しない場合は、「No」をクリックします。
  13. 「Finish」をクリックします。

NetBeans は Identity Manager IDE モジュールをインストールします。

これで、次の作業が可能になります。


Identity Manager IDE インタフェースの操作

Identity Manager IDE インタフェースは、次のウィンドウで構成されています。

図 1-4 Identity Manager IDE ユーザーインタフェース

Identity Manager IDE を最初に開いたときに、これらすべてのウィンドウが表示されるわけではありませんが、アプリケーションのさまざまな機能を使用するときには、ウィンドウが自動的に開くか、または開くことができるようになります。

ここでは、各ウィンドウについて説明します。説明する内容は次のとおりです。

エクスプローラウィンドウ

エクスプローラウィンドウは Identity Manager IDE の右上にあり、次の 3 つのウィンドウで構成されています。

プロジェクトウィンドウ

プロジェクトウィンドウは、Identity Manager IDE を開いたときにデフォルトで表示され、開いているすべてのプロジェクトを垂直な論理ビューで示します。

プロジェクトノードを展開すると、プロジェクト内の XML オブジェクトが階層ビューで示されます。XML オブジェクトを構成するほとんどの要素は、ツリーのノードで表されます。

このウィンドウ内で、プロジェクトノードまたはいずれかのオブジェクトノードを右クリックすると、さまざまなタスクを実行できるオプションを備えたポップアップメニューが表示されます (これらのオプションの概要については、表 1-1を参照してください)。

表 1-1 ポップアップメニューのオプション

ノード

ポップアップメニューのオプション

説明

プロジェクト

Debug Project

プロジェクトをデバッグするときに選択します (「Identity Manager IDE デバッガの操作」を参照)。

Close Project

プロジェクトを閉じるときに選択します。

Properties

プロジェクトの接続設定を表示するときに選択します (「プロジェクトプロパティーの表示および編集」を参照)。

オブジェクト

New

このプロジェクトの新規オブジェクトを作成するときに選択します。

CVS

Identity Manager IDE 内から CVS バージョン制御ファイルを管理するときに選択します。

Repository

リポジトリからローカルファイルシステムにオブジェクトをダウンロードするとき、ローカルファイルシステムからリポジトリにオブジェクトをアップロードするとき、およびビューをチェックアウトするときに選択します (「リポジトリオブジェクトの操作」を参照)。

Find

プロジェクト内でテキスト、オブジェクト名、オブジェクトタイプ、および日付を検索するときに選択します。プロジェクトウィンドウですべてのプロジェクトを検索することも、特定の場所を選択して検索することも可能です。

Cut、Copy、Paste

オブジェクトをカットアンドペーストやコピーアンドペーストするときに選択します。

Delete

選択したオブジェクトをプロジェクトから削除するときに選択します。

Refactor

オブジェクトのコード構造を変更し、この変更が反映されるように残りのコードを更新するときに選択します。

Tools

JUnit テストの作成、お気に入りへの追加、国際化の管理、または相違パッチの適用を行うときに選択します。

Properties

選択したオブジェクトのプロパティーを表示および編集するときに選択します。

 

Show Typed Nodes

「Project」ウィンドウでフォームや規則などの「type」ノードを表示または非表示にするときに選択します。

ファイルウィンドウ

ファイルウィンドウは、プロジェクトウィンドウでは表示されないファイルやフォルダを含めて、プロジェクトをディレクトリベースで表示するときに選択します。

プロジェクトビルドスクリプトやプロパティーファイルなどのプロジェクト設定ファイルを、開いたり、編集したりすることができます。

実行時ウィンドウ

実行時ウィンドウは、DTD および XML スキーマカタログの下にある Identity Manager カタログ (waveset.dtd) に読み取り専用アクセスする場合に選択します。

エディタウィンドウ

エディタウィンドウにはツールバーと表示エリアがあり、デザインビューとソースエディタビューでオブジェクトを操作できます。

ツールバー上のほかのボタンは、どちらのビューを選択したかに応じて変わります。

パレットウィンドウからエディタウィンドウには、アイテムをドラッグすることができます。たとえば、次のようにします。

アイテムをデザインビューにドラッグすると、プロジェクトおよびファイルの両方のビューの XML ソースとノードツリーが更新されます。詳細については、「パレットウィンドウ」を参照してください。

デザインビュー

デザインビューにはワークフローが図示され、図中の各ノードは特定のプロセスアクティビティーを、線は遷移を表現します。

図 1-6 デザインビューの例


デザインビューは、ワークフローを操作するときのデフォルトビューです。


デザインビューでは、ツールバーを使用して次のタスクを実行できます。

表 1-2 デザインビューのツールバーボタン

使用する機能

タスクの実行方法

Add Activity

「アクティビティを追加」: このボタンをクリックして、ワークフローを追加します。

Remove Activity

「アクティビティを削除」: このボタンをクリックして、1 つ以上のアクティビティーをワークフローから削除します。
複数のアクティビティーを削除するには、Ctrl キーを押したままノードを選択します。

ワークフローのレイアウトを設定

「レイアウト」: このボタンをクリックして、ワークフローをレイアウトします。アクティビティーが無秩序に配置されている場合には、それらをリセットして編成します。

ワークフローの妥当性検査

「XML の妥当性検査」: このボタンをクリックして、ワークフローを妥当性検査します。妥当性検査情報は出力ウィンドウに表示され、通常はソースエディタビュー内の特定の行に移動するハイパーリンクが提供されます。このリンク先で XML を表示または修正できます。

これらのボタンに加え、ワークフローセレクタメニューを使用して (このツールバーにも用意されている)、デザインビューでワークフローやワークフローのサブプロセスを選択して作業できます。

ワークフローをデザインビューで編集すると、ワークフローライブラリーから読み込まれるアイテムが、パレットウィンドウに表示されます。これらのアイテムをパレットからドラッグしてデザインビューにドロップし、図の中にアクティビティーノードを作成することができます。このとき、プロジェクトビューとファイルビューの XML ソースとノードツリーも更新されます。詳細については、「パレットウィンドウ」を参照してください。

ソースエディタビュー

ソースエディタは、エクスプローラのプロジェクトウィンドウとデバッガに統合されている多機能なテキストエディタです。

使用可能な Identity Manager IDE テンプレートから編集可能なオブジェクトを作成するか、またはプロジェクトウィンドウで編集可能なオブジェクトをダブルクリックすると、このビューが自動的に開きます。

図 1-7 ソースエディタビューの例

ソースエディタには、オブジェクトの XML がフィルタリングされていない状態で表示されます。XML タグのすぐ横の左マージンをクリックして、ブレークポイントを設定できます。たとえば、<WFProcess...> タグの横のマージンをクリックすると、ワークフローの開始位置にブレークポイントを設定できます。

編集のためにオブジェクトを選択すると、パレットウィンドウが通常 Identity Manager IDE の右上に、ワークフローライブラリおよび XPRESS カテゴリのアイテムとともに表示されます。アイテムを「Palette」からソースエディタの行にドロップして、XML ソース内のそのポイントに XML テキストを作成できます。

表 1-3 では、ソースエディタビューで提供されるツールバーボタンについて説明しています。各タスクのキーボードショートカットも示しています。

表 1-3 ソースエディタビューのツールバーボタン (およびショートカット) 

使用するボタン

タスクの実行方法

ソースエディタビュー: 「戻る」および「進む」ボタン

「Back」 (Alt+K) および「Forward」 (Alt+L): これらのボタンをクリックすると、「Source Editor」ウィンドウで行った直前の編集に戻るか、または次の編集に進みます。

ソースエディタビュー: 「検索」ボタン

これらのボタンを使用して、カーソルの挿入ポイントを次のように移動します。

  • 「Find Previous Occurrence」 (Shift+F3): このボタンをクリックすると、直前に検索したテキストを検出して、そこに挿入ポイントを移動します。
  • 「Find Selection」 (Ctrl+F3): このボタンをクリックすると、現在カーソルが挿入されているアイテムを検索します。
  • 「Find Next Occurrence」 (F3): このボタンをクリックすると、検索するテキストの次の出現を検出して、そこに挿入ポイントを移動します。

ソースエディタビュー: 「強調表示の切り替え」および「ブックマーク」ボタン

これらのボタンを使用して、次のように機能をオンまたはオフに切り替えます。

  • 「Toggle Highlight Search」 (Alt+Shift+H): このボタンをクリックして、検索テキストの強調表示をオン/オフにします。
  • 「Toggle Bookmark」 (Ctrl+F2): 行を強調表示してからこのボタンを押すと、現在の行にブックマークが挿入されるか、または現在の行からブックマークが削除されます。

ソースエディタビュー: 「ブックマーク」ボタン

「Next Bookmark」 (F2) および「Previous Bookmark」 (Shift+F2): これらのボタンをクリックすると、XML ソース内の次のブックマークまたは直前のブックマークを検出します。

ソースエディタビュー: 「一致した単語」ボタン

「Next Matching Word」 (Ctrl+L) および「Previous Matching Word」 (Ctrl+K): XML ソース内で単語を選択してからこれらのボタンをクリックすると、その単語の次または直前の出現を検出します。

ソースエディタビュー: 「行をシフト」ボタン

「Shift Line Left」 (Ctrl+D) および「Shift Line Right」 (Ctrl+T): これらボタンをクリックすると、選択した行のインデントがタブ一段分減少または増加します。

ソースエディタビュー: 「マクロ記録を開始」および「マクロ記録を停止」ボタン

「Start Macro Recording」 (Ctrl+J S) および「Stop Macro Recording」 (Ctrl+J E): これらのボタンをクリックして、キーストロークやカーソルの移動を含む、マクロの記録を開始または停止します。

ソースエディタビュー: 「XML の検査」および「XML の妥当性検査」ボタン

これらのボタンを使用して、次のように XML ソースを検査または妥当性検査します。

  • 「Check XML」 (Alt+F9): このボタンをクリックすると、オブジェクトの XML が正しく整形式であるかを検査します。出力ウィンドウには XML ソースのエラーが特定され、通常はソースエディタ内のその行へのハイパーリンクが提供されて、問題を訂正することができます。
  • 「Validate XML」 (Alt+Shift+F9): このボタンをクリックすると、オブジェクトの XML を DTD に対して妥当性検査します。妥当性検査情報は出力ウィンドウに表示され、通常はソースエディタビュー内の特定の行に移動するハイパーリンクが提供されます。このリンク先で XML を表示または修正できます。

パレットウィンドウ

パレットウィンドウを使用して、新規のワークフローサービス、承認、ユーザー、およびワークフロータスクをソースエディタビューまたはデザインビューのウィンドウに表示されているワークフローにドラッグできます。

編集するオブジェクトを選択すると、パレットウィンドウが通常 Identity Manager IDE の右上に表示され、作業中の編集ビューに応じてさまざまなアイテムへのアクセスが提供されます。

どちらのビューでも、アイテムをパレットウィンドウからデザインまたは XML ソースにドラッグできます。アイテムをデザインビューにドラッグすると、図にアクティビティーノードが作成されます。アイテムをソースエディタビューにドラッグすると、アイテムをドロップした場所に XML テキストが作成されます。

図 1-8 Create User のパレットウィンドウ

Create User のパレットウィンドウでのドラッグアンドドロップの例

プロパティーウィンドウ

Identity Manager IDE プロパティーウィンドウを使用して、エクスプローラで選択したオブジェクトノードに関連付けられている XML 要素のプロパティーシートを表示します。プロパティーシートは、選択したノードの名前、およびファイルサイズ、変更回数、結果情報などのプロパティー値で構成されています。

プロパティーウィンドウを開くには、メインメニューバーで「Window」>「Properties」の順に選択するか、プロジェクトウィンドウでノードを右クリックしてメニューから「Properties」を選択します。このウィンドウが開いているときに、オブジェクトノードをダブルクリックしてウィンドウの内容を更新することができます。

図 1-9 プロパティーウィンドウの例

Create User のプロジェクトウィンドウの例

プロパティーウィンドウからも、オブジェクトの XPRESS 文の編集が可能なプロパティーエディタにアクセスできます。このエディタダイアログを使用して、オブジェクトの値、タイプ、スタイルをシンプルまたは計算済みに変更したり、式を追加または削除したり、式を上下に移動したりすることができます。

プロパティーエディタを開くには、プロパティーウィンドウで省略記号 (...) ボタンをクリックするか、または XPRESS 文をダブルクリックします。

プロパティーウィンドウとプロパティーエディタウィンドウに関する追加情報については、「オブジェクトプロパティーの編集」を参照してください。

出力ウィンドウ

出力ウィンドウには、Identity Manager IDE がデバッグ中にエラーを検出したときに返すメッセージが表示されます。このメッセージには通常、エラーの原因となったソースコードの行へのハイパーリンクが含まれます。

出力ウィンドウはデバッガを実行すると自動的に開きますが、メインメニューバーで「Window」>「Output」の順に選択して開くこともできます。

図 1-10 出力ウィンドウの例

出力ウィンドウの例

デバッガウィンドウ

Identity Manager IDE のために用意されているデバッガは、Java デバッガおよび BPE に備わっているデバッガに似ています。コード内で行、グローバル、ビュー、またはフォームサイクルにブレークポイントを設定し、デバッガを開始して XML 内でコードを停止することができます。

Identity Manager IDE デバッガでは、特定の変数の値を表示するウォッチポイントを追加することもできます。もう一つの優れた特色は、デバッガが規則テスターおよびフォームプレビューアと統合されていることです。これについてはこの章で後述します。

デバッガには、XML ソースのトラブルシューティングに便利な次のウィンドウが提供されています。

ブレークポイントウィンドウ

ブレークポイントウィンドウには、現プロジェクトに設定したすべてのブレークポイントが、ブレークポイントの簡単な説明およびブレークポイントが現在有効か無効かを示すブール型フラグとともに一覧表示されます。ブレークポイントウィンドウで「Enabled」プロパティーを変更することにより、ブレークポイントを直接有効化または無効化できます。

メインメニューバーで「Window」>「Debugging」>「Breakpoints」の順に選択すると、ブレークポイントウィンドウが開きます。

呼び出しスタックウィンドウ

デバッガを実行すると、Identity Manager IDE は自動的に呼び出しスタックウィンドウを起動します。

デバッガがブレークポイントに達すると、スレッドがブレークポイントに到達するまでに実行した一連の呼び出しである実行スタックが、呼び出しスタックウィンドウに表示されます。XPRESS では、これらの呼び出しは BLOCKCASE などの XPRESS 操作です。

追加の関数が呼び出しチェーンに出現する場合、これらの関数は順番に一覧表示されます。このリストはスタックトレースと呼ばれ、リストにはプログラムのライフサイクルのその時点での実行スタックの構造が表示されます。


呼び出しスタックウィンドウを閉じるかまたは別の理由でこのウィンドウが利用できなくなった場合は、メインメニューバーから「Window」>「Debugging」>「Call Stack」の順に選択することで、もう一度ウィンドウを開くことができます。


ローカル変数ウィンドウ

ローカル変数ウィンドウには、デバッガがブレークポイントで停止したときに、現時点の実行範囲内にあるすべての変数がリストされます。変数は、次のタイプの値を表します。

デバッグがアクティブでないときや、実行がブレークポイントで停止していないときは、ローカル変数ウィンドウは空白になります。

現在の要素が XPRESS 終了タグである場合、デバッガを停止すると、最後の評価の結果がローカル変数ウィンドウに表示されます。この評価値は、最後の値が意味を持つ他のタグにも適用されます。たとえば、Identity Manager が <Argument> タグをワークフローサブプロセスに対して評価すると、引数値がローカル変数ウィンドウに表示されます。


  • XPRESSの実行中には、ローカル変数ウィンドウに変数が表示されません。
  • デバッグが停止しているとき、Last Value エントリは空白となります。

ウォッチポイントウィンドウ

デバッガでは、ウォッチポイントを使用でき、デバッガ実行時に変数や式の値に加えられる変更を追跡することができます。有効な XPRESS 式であれば、ウォッチポイントになります。

ウォッチポイントを指定すると、プロジェクトをデバッグするときに監視対象になるすべての変数、式、タイプ、および値がウォッチポイントウィンドウに一覧表示されます。このリストには、XML ソース内のオブジェクトタイプに移動するハイパーリンクが含まれている場合もあります。

デバッガを起動すると、Identity Manager IDE はウォッチポイントウィンドウを自動的に起動します。または、メインメニューバーから「Window」>「Debugging」>「Watches」の順に選択することもできます。

キーボードショートカットの使用

NetBeans を使用することにより、Identity Manager IDE ではさまざまなキーボードキーの組み合わせを使って、コマンドを実行したり、Identity Manager IDE 内でナビゲートしたりすることができます。次の操作が可能です。

使用可能なキーボードショートカットの詳細な説明、およびそれらの使用手順については、オンラインヘルプを参照してください。


ショートカットを割り当てるには、「Tools」>「Options」の順に選択し、「Options」ダイアログが表示されたら「Keymap」を選択します。



Identity Manager IDE プロジェクトの操作

Identity Manager IDE を効果的に使用するには、Identity Manager IDE プロジェクトの一部の基本的な概念について理解することも必要です。ここでは、次の内容を説明します。

プロジェクトとは何か

プロジェクトとは、Identity Manager IDE がデフォルトサーバーやパスワードなどのリポジトリ接続、オプション、デバッガブレークポイント、開いているソース、および自動保存されたファイルに関する情報が格納される場所です。


Identity Manager IDE のプロジェクトは、BPE のワークスペースと類似しています。


プロジェクトは特定のリポジトリに関連付けられます。複数のプロジェクトを 1 つのリポジトリに関連付けることは可能ですが、1 つのプロジェクトにつき 1 つのリポジトリにしか関連付けられません。


Identity Manager IDE プロジェクトを使用することにより、CVS と直接対話することができます。詳細については、NetBeans マニュアルを参照してください。


Identity Manager IDE では、次の 2 つのプロジェクトタイプを作成できます。

プロジェクトの作成

新規プロジェクトを作成するには、次の手順に従います。

  1. 「File」>「New Project」の順に選択します。
  2. 新規プロジェクトウィザードが表示されたら (図 1-11)、「Categories」リストから「Sun Identity Manager」を選択して、作成するプロジェクトのタイプを指定します。
  3. 図 1-11 新規プロジェクトウィザード: カテゴリの指定
    「カテゴリ」リストから「Sun Identity Manager」を選択します。

  4. 「Projects」リストから、次のサンプル Sun Identity Manager プロジェクトの 1 つを選択します。
    • Identity Manager のソースファイルを使用して新規プロジェクトを作成する場合は、「Sun Identity Manager」プロジェクトを選択します。
    • ローカルファイルシステムにすでに存在している XML ファイルを編集する場合は、「Sun Identity Manager with Existing XML Objects」を選択します。
  5. 完了したら、「Next」をクリックします。
  6. 「Name and Location」パネルが表示されるため、このプロジェクトを格納するファイルシステムの場所を指定できます。プロジェクト名、ディレクトリの場所、およびプロジェクトフォルダ名を指定されたフィールドに入力してから、「Next」をクリックします。
  7. 図 1-12 新規プロジェクトウィザード: プロジェクト格納場所の指定
    新規プロジェクトの名前と場所を指定します。


    「Sun Identity Manager with Existing XML Objects」でプロジェクトを作成している場合は、図 1-13 に示されている「Existing XML Objects Location」パネルが表示されます。

    Identity Manager プロジェクトを作成している場合は、手順 6 を省略して手順 に進みます。


    図 1-13 新規プロジェクトウィザード: 既存の XML オブジェクトの場所の指定
    既存の XML オブジェクトが含まれているフォルダの指定。

  8. XML オブジェクトが格納されているディレクトリパスとフォルダを指定してから、「Next」をクリックします。
  9. 「Connection」パネルが表示されます (図 1-14)。

    図 1-14 新規プロジェクトウィザード: 接続設定の指定
    新規プロジェクトの接続設定の指定。

  10. 次の情報を入力して、開発のための Identity Manager インスタンスへの接続方法を定義します。

    • Identity Manager IDE はリモート (SOAP) 接続をサポートします。
    • リモート接続を設定する際、Identity Manager IDE はこの接続を使用してオブジェクトをアップロードまたはダウンロードします。

    • 「Host」 - プロジェクトが実行されているホストの名前を入力します。
    • 「Port」: ディレクトサーバーが待機する TCP ポートの番号を入力します。
    • Identity Manager IDE で接続を開くときに SSL を使用する場合は、「Secure Connection」ボックスを有効にします。

    • 「Context Path」: Identity Manager インストールのコンテキストルート (/idm など) を入力します。
    • 「User」: 管理者のユーザー名を入力します。
    • 「Password」: 管理者のパスワードを入力します。
    • Identity Manager IDE がパスワードを記憶して、将来のセッションでパスワードが自動的に入力されるようにする場合は、「Remember Password」ボックスを有効にします。

  11. すべての接続パラメータの設定を終えたら、「Test Connection」をクリックしてプロジェクト環境への接続状況を確認します。
  12. 「Login」ダイアログが表示されたら、ログイン情報を入力して「OK」をクリックし、プロジェクトプロパティーに指定した Identity Manager サーバーにアクセスできるかどうかをテストします。
  13. 接続が成功すると、次のポップアップが表示されます (図 1-15 を参照)。

    図 1-15 接続成功
    接続のテストが成功しました。

    接続に失敗すると、エラーメッセージが表示され、失敗に関する情報が提供されます。問題を訂正して、もう一度接続をテストしてください。


    既存のプロジェクトのプロパティーを編集する際にも、Identity Manager IDE の接続をテストできます。


  14. 「OK」をクリックしてポップアップを閉じ、作成したプロジェクトが Identity Manager IDE の左上にあるプロジェクトウィンドウで使用可能になっていることを確認します。

既存プロジェクトの選択

既存のプロジェクトを開くには、次の手順に従います。

  1. 「File」>「Open Project」の順に選択します。
  2. 「Open Project」ダイアログが表示されたら (図 1-16)、使用するプロジェクトフォルダを参照して「Open Project Folder」をクリックします。
  3. 図 1-16 「Open Project」ダイアログ
    「プロジェクトを開く」ダイアログを使用して、既存のプロジェクトを参照および選択します。

    すでに 1 つまたは複数のプロジェクトが開かれている場合は、右上の「Open as Main Project」チェックボックスがアクティブになります。

  4. このプロジェクトをメインプロジェクトとして指定する場合は、このボックスを有効にします。
  5. 「Open Project Folder」をクリックすると、選択したプロジェクトがエクスプローラウィンドウに追加されます。

プロジェクトプロパティーの表示および編集

プロジェクトを作成または選択したあと、次のいずれかの方法でプロジェクトのプロパティーを表示または編集できます。

「Project Properties」ダイアログが表示され (図 1-17)、プロジェクトの接続設定を確認できます。これらのプロパティーのどれかを編集する場合は、「Test Connection」をクリックしてプロジェクト環境に引き続き接続できることを確認します。

図 1-17 プロジェクト環境への接続のテスト

「接続のテスト」をクリックして、プロジェクト環境への接続を確認します。


リポジトリオブジェクトの操作

Identity Manager IDE では、BPE の場合のように直接リポジトリ内で作業するのではなく、ローカルファイルシステム上でリポジトリオブジェクトを操作できます。

ここでは、次のことに関連する手順について説明します。

サポートされているオブジェクトタイプ

Identity Manager IDE では、次のオブジェクトタイプを操作できます。

リポジトリからのオブジェクトのダウンロードおよび再読み込み

Identity Manager IDE を使用することの利点の 1 つは、リポジトリの外でオブジェクトをダウンロードおよび変更できることです。

オブジェクトのダウンロード

リポジトリから Identity Manager IDE へ初めてオブジェクトをダウンロードする場合は、次の手順に従ってください。

  1. 「Objects」ノード (またはプロジェクトウィンドウ内の任意のオブジェクトタイプノード) を右クリックし、ポップアップメニューが表示されたら、「Repository」>「Download objects」の順に選択します。
  2. 「Download Objects From Repository」ダイアログが表示され、リポジトリ内のオブジェクトを参照できます。「Object Type」ノードを展開して、リストからオブジェクトを選択します。

  3. ヒント

    リストからオブジェクトを選択するときに Ctrl キーを押すことで、リポジトリから複数のオブジェクトをダウンロードできます。


  4. 準備が完了したら、「Download」ボタンをクリックします。

選択したオブジェクトノード、およびオブジェクト内の個々の要素を表す子が、エクスプローラに表示されます。子ノードをダブルクリックして、ノードの XML 要素に移動し、要素をプロパティーシートに表示することができます。

オブジェクトの再読み込み

現在のプロジェクト内のオブジェクトを、リポジトリにある同じオブジェクトの新しいバージョンで置き換えるまたは上書きするには、次の手順に従います。

  1. オブジェクトノードを右クリックし、ポップアップメニューが表示されたら、「Repository」>「Reload objects」を選択します。

  2. ヒント

    リストからオブジェクトを選択するときに Ctrl キーを押すことで、リポジトリから複数のオブジェクトをダウンロードできます。


  3. 「Overwrite Files?」ダイアログが表示され、ローカルファイルシステムにそのオブジェクトがすでにあることを知らせるとともに、リポジトリから最新のコピーを読み込むかどうかが確認されます。
    • 「Yes」または「Yes for All」をクリックして続行します。
    • 続行しない場合は、「No」または「No for All」をクリックします。
  4. 準備が完了したら、「Reload」ボタンをクリックします。

選択したオブジェクトノード、およびオブジェクト内の個々の要素を表す子が、エクスプローラに表示されます。子ノードをダブルクリックして、ノードの XML 要素に移動し、要素をプロパティーシートに表示することができます。

リポジトリへのオブジェクトのアップロード

新規または変更したオブジェクトをローカルファイルシステムからリポジトリにアップロードするには、次の手順に従います。

  1. プロジェクトウィンドウで 1 つ以上のオブジェクトを選択します。

  2. ヒント

    リストからオブジェクトを選択するときに Ctrl キーを押すことで、アップロードするオブジェクトを複数選択できます。


  3. ノードを右クリックし、ポップアップメニューから「Repository」>「Upload objects」の順に選択すると、選択したオブジェクトはただちにアップロードされます。

ビューのチェックアウト

Identity Manager IDE を使用することにより、編集のためにユーザービューなどの特定のビューをリポジトリからチェックアウトできます。


通常は、ビューのチェックアウト機能を使用してユーザーを更新しないでください。ビューの動作を理解する助けとして、この方法を紹介しているにすぎません。Identity Manager のユーザーを更新するには、Identity Manager Web インタフェースを使用します。


ビューをチェックアウトするには、プロジェクトウィンドウの「Objects」フォルダを右クリックして、ポップアップメニューから「Repository」>「Checkout view」の順に選択します。「View type」と「View name」を指定すると、ビューのコンテンツがツリー形式で表示されます。

編集後に、ほかの XML オブジェクトと同様に、ビューを右クリックしてリポジトリにチェックインします。

新規オブジェクトの作成

プロジェクトに新規オブジェクトを作成するには、次の手順に従います。

  1. オブジェクトノード (またはオブジェクトタイプノード) を右クリックして、「New」>「File/File Folder」の順に選択します。
  2. 新規ファイルウィザードが表示されたら、次の操作を行います。
    1. 「Categories」リストで「Sun Identity Manager Objects」を選択し、「File Types」リストからオブジェクトタイプを 1 つ選びます。「Next」をクリックします。
    2. ファイル名およびファイルを格納するフォルダを入力します。「Finish」をクリックして、新規ファイルウィザードを閉じます。
    3. デフォルトでは、Identity Manager IDE が現在のプロジェクトディレクトリと現在のプロジェクトのオブジェクトフォルダを自動的に指定しますが、別の場所を指定することもできます。

新規オブジェクトは、選択したオブジェクトタイプノードの下に子として表示されます。また、新規オブジェクトの XML ソースがソースエディタビューに表示されます。


Identity Manager IDE では、各 XML ソースファイルにただ 1 つのオブジェクトだけが含まれていることを前提にしています。

そのため、複数のオブジェクトを含む XML ファイルを使用すると (wfresource.xml サンプルなど Identity Manager とともに配布されているファイルを含む)、オブジェクトはプロジェクトウィンドウにノードとして表示されず、パレット内で使用可能にならず、Identity Manager IDE アクションはコンテキストメニューに組み込まれません。

しかし、これらの XML ファイルをプロジェクトの「Objects」ディレクトリに配置すると、Identity Manager IDE はそれらのファイルをプレーンテキストとして扱うため、「File」ツリーで表示することができ、直接ファイルを開いて編集することもできます。


オブジェクトプロパティーの編集

オブジェクトのプロパティーの編集は、プロパティーウィンドウで、またはオブジェクトノード (またはオブジェクトタイプノード) を右クリックしてポップアップメニューから「Properties」を選択して行うことができます。

図 1-18 プロパティーウィンドウの例

オブジェクトプロパティーの編集

プロパティーウィンドウには、次の機能が 1 つ以上備わっています。


XML の操作

オブジェクトの XML を編集するには、プロジェクトウィンドウまたはファイルウィンドウで編集するオブジェクトノードをダブルクリックします。デフォルトでソースエディタビューが表示されない場合は、「Source」ボタンをクリックします。

オブジェクトのフィルタリングされていない XML がソースエディタに表示されるため、必要に応じて XML を編集、検査、および妥当性検査できます。

編集のためにオブジェクトを選択すると、パレットウィンドウがワークフローライブラリおよび XPRESS カテゴリのアイテムとともに表示されます。アイテムを「Palette」からソースエディタの行にドロップして、XML ソース内のそのポイントに XML テキストを作成できます。

自動補完の使用

Identity Manager IDE はインストール時に waveset.dtd 定義ファイルを登録し、これによって XML 要素と属性の自動補完が可能になります。

自動補完機能を使用するには、XML 要素または属性の入力を開始し、それから Ctrl+Spacebar を押します。NetBeans は、要素を自動補完するために使用できる要素と属性のリストを表示します。

不正な形式の XML の識別と修正

Identity Manager IDE に読み込んだファイルに不正な形式の XML が含まれている場合、またはファイルに加えた編集が定義 (DTD) ファイルに従っていない場合には、プロジェクトウィンドウとファイルウィンドウでオブジェクトの最上位の親にエラーアイコンが表示されます。

図 1-20 エラーアイコン

不正な形式の XML があると、エラーアイコンが「プロジェクト」ツリーと「ファイル」ツリーに表示されます。

また、オブジェクトに不正な書式の XML が含まれていると、次のようになります。

ソースエディタウィンドウで右クリックして、ポップアップメニューから「Validate XML」を選択すると、形式が不正な XML ソースへのリンクを含む結果が出力ウィンドウに表示されます。このリンクをクリックすると、Identity Manager IDE がソースエディタウィンドウで不正な形式の XML の次の行を強調表示するため、容易に問題を検出して修正することができます。

XML の妥当性検査

ソースエディタで右クリックしてコンテキストメニューから「Validate XML」を選択することにより、オブジェクトの XML をただちに妥当性検査できます。

出力ウィンドウで結果を確認します。次のようなメッセージが表示されるはずです。

XML の妥当性検査を開始しました。

file:/H:/IdentityMgr/IDM_IDE_Project/Idm/objects/
System%20Configuration.xml を検査中...

XML 妥当性検査が終了しました。


Identity Manager IDE デバッガの操作

Identity Manager IDE には、Identity Manager のフォーム、規則、およびワークフローのデバッグに使用できるグラフィカルなデバッガが用意されています。このデバッガを使用して、ブレークポイントとウォッチポイントの設定、コードのステップスルー、変数の検査と変更、クラスと呼び出しスタックの検査、スレッドの監視、および複数セッションの実行を行えます。

ここでは、Identity Manager IDE デバッガの使用法を説明します。手続き型プログラミング言語のコードデバッガを使用した経験があれば、この節で使用されている用語の理解は難しくありません。説明する内容は次のとおりです。

デバッガの開始

Identity Manager IDE デバッガを開始するには、メインメニューバーから「Run」>「Debug Main Project」の順に選択します。

デバッグセッションを開始すると、Identity Manager IDE はプログラムに関するランタイム情報を表示する一連のデバッガウィンドウを自動的に開きます。これらのウィンドウで次の操作ができます。

ブレークポイントの設定

コードの特定の行を実行する前にオブジェクトの実行を停止するには、デバッガの breakpoint コマンドを使用します。


ブレークポイントの設定は、グローバルな設定となることに注意してください。デバッガは指定されたブレークポイントに達すると、着信リクエストスレッドを中断します。このアクションは、どのユーザーがリクエストを作成したかにかかわらず実行されます。


デバッガ使用中は、フォームやワークフローをどこで起動したかにかかわらず、ブレークポイントが適用されます。ほとんどのデバッガではソース上の位置にしかブレークポイントを設定できませんが、Identity Manager IDE のデバッガでは「Refresh view」などの概念的な実行ポイントにもブレークポイントを設定できます。この場合、デバッガはビューの更新操作が発生するたびに操作を中断します。そこで、「Refresh view」にステップインし、進行中の基礎となるフォーム処理を監視できます。

すべてのソースブレークポイントの要約をブレークポイントウィンドウに表示できます。通常、このウィンドウは Identity Manager IDE の左下隅にあります。ブレークポイントウィンドウでブレークポイントをクリックして、ソースエディタ内の対応するブレークポイントに移動することもできます。

ブレークポイントで停止すると、デバッガは現在の実行ポイントの範囲内にある変数も表示します。

図 1-21 ブレークポイントウィンドウ

ブレークポイントウィンドウにブレークポイントを表示できます。

ブレークポイントを設定する最も簡単な方法は、ブレークポイントを追加するタグの真横の、ソースエディタの左マージン部分をクリックすることです。

メインメニューから「Run」>「New Breakpoint」の順に選択することもできます。「New Breakpoint」ダイアログが表示されたら、「Debugger 」メニューから「XPRESS」を選択します。ダイアログの内容が変更され、次のオプションが提供されます。

Identity Manager に添付されているチュートリアルサンプルには、ブレークポイントの使い方の例が示されています。「Identity Manager IDE チュートリアルの使用: フォーム、規則、およびワークフローのデバッグ」を参照してください。

ウォッチポイントの使用

Identity Manager IDE デバッガでは、有効な XPRESS 式であればどの式でもウォッチポイントとして使用することができます。ウォッチポイントには 2 つの目的があります。

デバッガを最初に起動したとき、およびステップ実行中に中断するたび、またはブレークポイントで、デバッガはその時点のコンテキストでウォッチポイントを評価します。また、ウォッチポイントを追加または変更するたびに、デバッガはウォッチポイントを再評価します。

Identity Manager に添付されているチュートリアル (debugger-tutorial-workflow1.xml) には、ウォッチポイントの使い方の例が示されています。「例 1: ワークフローと規則をデバッグする」を参照してください。

実行プロセスのステップスルー

ステップスルーとは、実行中のプロセスの関数を逐次、計画的に分析する処理のことです。

用語

ステップイン、ステップオーバー、およびステップアウトは、言語の構造によって実行順が暗黙的に決定される手続き型プログラミング言語のデバッガに由来する用語です。しかし、Identity Manager のフォームとワークフローでは、コード内で要素が出現する順序はその実行順に影響しません。

したがって、これらの用語が Identity Manager IDE やビジネスプロセスエディタ (BPE) で使用される場合、多少異なった意味を持ちます。

表 1-4 は、Identity Manager IDE デバッガによる、次のコードサンプルの処理方法のスナップショットを示します。

<A>
   <B/>
</A>
<D/>
(A、B、および D は何らかの XML 要素)

表 1-4 デバッグプロセスの例

実行順

結果

<A><B/></A><D/>

「step-into」をクリックすると、デバッガはこの実行順で行を強調表示します。

「step-over」をクリックすると、デバッガは <A></A> を強調表示します。
(B をスキップして)、<D/> を強調表示します。

<A><D/><B/></A>

「step-over」をクリックすると、<A><D/><B/></A> の順でコード行が表示されます (この場合、ステップオーバーはステップインと同じ)。

フォームのデバッグ

ここでは、匿名ソースの操作方法を説明し、フォームプレビューアユーティリティーの設定および起動の手順を示します。

Identity Manager フォームエンジンがフォームを処理する方法の詳細については、『Sun JavaTM System Identity Manager ワークフロー、フォーム、およびビュー』を参照してください。


呼び出しスタックウィンドウで実行スタックをチェックして、どのパスが現在処理中であるかを確認できます。


匿名ソースの操作

フォームをステップスルーするときに、デバッガは匿名ソースを識別できます。匿名ソースとは、Login フォームや MissingFields など、一時的に作成されるフォームまたはフォームの一部のことで、Identity Manager リポジトリにある持続的フォームは該当しません。

これらのフォームはリポジトリに存在しせず、固有の識別子を持たないため、匿名ソースには個別のブレークポイントを設定することができません。ただし、「ブレークポイントの設定」で説明されている方法で「All anonymous sources breakpoint」を設定すると、匿名ソースに対してステップスルーはできます。

この設定により、デバッガは直接の XPRESS ソースを持たないポイントで実行を停止することができます。結果として、デバッガは匿名ソースからの行を検出するたびに中断します。

フォームプレビューアの設定および起動

Identity Manager IDE には、外部ブラウザでフォームをプレビューできるフォームプレビューア機能が用意されています。フォームプレビューアはデバッガに統合されているため、フォームのトラブルシューティングも可能です。

フォームをプレビューすると、Identity Manager にログインするようリクエストされます。
フォームをプレビューするたびにログインする必要のないように、次のようにしてシステム設定オブジェクトの allowInterAppAuthenication プロパティ−を有効にします。

  1. 「Project」タブから、「Generic Objects」ノードを展開し、「System Configuration」をダブルクリックして、ソースエディタウィンドウに XML を表示します。
  2. 下方へスクロールするか「Edit」>「Find」を使用して allowInterAppAuthentication 属性を探し、その値を true に変更します。
  3. メインメニューバーで、「File」>「Save」の順に選択して、変更を保存します。

次のいずれかの方法で、フォームプレビューア機能を起動します。

Identity Manager IDE は、ブラウザウィンドウに新規 Identity Manager セッションを起動し、Identity Manager 管理者ユーザーインタフェースのコンテキストでフォームを表示します。さらに、アップロードされたフォームに関する情報が Identity Manager IDE 出力ウィンドウに表示されます。


Identity Manager には、フォーム、規則、およびワークフローをデバッグする方法を理解するのに役立つチュートリアル (debugger-tutorial-workflow1.xml) が提供されています。このチュートリアルを使用する手順については、「Identity Manager IDE チュートリアルの使用: フォーム、規則、およびワークフローのデバッグ」を参照してください。


規則のテスト

Identity Manager IDE には、スタンドアロン規則とライブラリ規則を検証する規則テスタが用意されています。

ソースエディタで規則を編集する際に、規則テスタを使用して規則をテストできます。ソースエディタで任意の規則引数に値を指定してから、規則を「run」します (トレース文を組み込むこともできる)。

規則テスタを説明する最も良い方法は、例を使用することです。次の節では、スタンドアロン規則とライブラリ規則をテストする手順の例を示します。さらに、Identity Manager に添付されているチュートリアル (debugger-tutorial-workflow1.xml) には、規則をデバッグする方法の例が示されています。「Identity Manager IDE チュートリアルの使用: フォーム、規則、およびワークフローのデバッグ」を参照してください。

例 1: スタンドアロン規則をテストする

この例では、単純なスタンドアロン規則をテストする方法を示します。

  1. 「Objects」>「Repository」>「Download Objects」の順に右クリックして、リポジトリから Accountname First dot Last 規則をダウンロードします。
  2. 「Rules」ノードを展開し、Accountname First dot Last をダブルクリックして、この規則を開きます。
  3. 「Rule Tester Inputs」ウィンドウを右クリックして、メニューから「Add value」を選択します。
  4. 「New Value」ダイアログが表示されたら、次の情報を入力します。
    • 「Name」: global.firstname
    • 「Type」: String
    • 「Value」: myfirst
  5. もう一度、「Rule Tester Inputs」ウィンドウを右クリックし、次の情報でもう 1 つの新しい値を入力します。
    • 「Name」: global.lastname
    • 「Type」: String
    • 「Value」: mylast
    • 「Rule Tester Inputs」ウィンドウは、図 1-22 のようになります。

      図 1-22 「Rule Tester Inputs」ウィンドウ
      規則テスタ入力の例。

  6. これで、規則をテストできます。
  7. 「Test Rule」ボタン 「Test Rule」ボタン (ソースエディタツールバーの右端) をクリックするか、またはプロジェクトウィンドウで Accountname First dot Last 規則を右クリックしてポップアップメニューから「Test Rule」を選択します。


    規則テストが規則を自動的に保存し、レポジトリに公開することを警告するメッセージが表示されます。「Yes」または「Always」をクリックして続行します。


    次のような出力が、「Rule Tester Output」ウィンドウに表示されるはずです。

    <String>myfirst.mylast</String>

    <String>myfirst.mylast</String>

    <String>myfirst.mylast</String>

  8. 次に、規則のテストとデバッガの実行を同時に試行します。
    デバッガがまだ実行されていない場合は、メインメニューバーの「Debug Main Project」ボタン 「主プロジェクトをデバッグ」ボタン をクリックします。
  9. ソースエディタウィンドウに移動し、XML 内で <Rule> タグの横のマージンをクリックして、ブレークポイントを追加します。
  10. 「Window」>「Debugging」>「Breakpoints」の順に選択すると、ブレークポイントウィンドウが開きます。
  11. 「Test Rule」ボタンをクリックすると、デバッガはブレークポイントで停止します (ブレークポイントウィンドウの結果を参照)。
  12. 「Step Into」ボタン 「ステップイン」ボタン を 7 回クリックして規則をステップスルーし、ローカル変数ウィンドウの結果を監視します。
  13. 「Resume」をクリックして、「Rule Tester Output」ウィンドウの結果を監視します。

例 2: ライブラリ規則をテストする

ライブラリ規則のテストはスタンドアロン規則のテストに非常によく似ていますが、ソースエディタツールバーにある「Rule Selector」を使用する点が異なります。

  1. 必要に応じて、リポジトリから Alpha Numeric Rules ライブラリをダウンロードし、ノードをダブルクリックしてソースエディタでこのライブラリ規則を開きます。
  2. ソースエディタツールバーの「Rule Selector」メニューを使用して、stringToChars を選択します (図 1-23)。
  3. 図 1-23 「Rule Selector」メニューの使用
    「Rule Selector」メニューの使用。

    この規則は形式引数を宣言しているため、「Rule Tester Inputs」ウィンドウには testStr 引数が表示されます。

  4. testStr 引数に値を指定します (「Rule Tester Inputs」ウィンドウで引数名を右クリックして、「New Value」ダイアログに値を入力する)。
  5. 「Test Rule」ボタンをクリックして規則を実行し、出力ウィンドウの結果を監視します。

ワークフローのデバッグ

ワークフローは単一の Java スレッドによって実行され、呼び出しスタックウィンドウで単一の Java スレッドによって表現されます。ただし、ワークフローの内部で、各アクティビティーは個別の仮想スレッドになります。

ワークフロー実行の間、ワークフローエンジンは仮想スレッドのキューを循環的に処理します。各仮想スレッドは、次の表で説明する状態のいずれかになります。

表 1-5 仮想スレッドの状態  

ワークフローアクティビティーの状態

定義

準備完了

遷移したばかりのアクティビティーを特定します (この状態はごく一時的であり、アクションは通常、準備完了と指定された直後に実行を開始する)。

実行中

現在実行中であるか、まだ実行されていない 1 つ以上のアクションを含むアクティビティーを特定します。

これは論理状態であり、Java スレッドがその時点でそのアクションを実行していることを意味しません。現在実行中のアクションは、必ず太字または通常のフォントで表示されます。
実行中ではないアクションは、斜体で表示されます。

保留中のアウトバウンド

アクティビティー内のすべてのアクションが実行された直後のアクティビティーを特定します。このようなアクティビティーは、保留中のアウトバウンド状態に移行します。この状態のアクションは、アウトバウンド遷移の発生を待機します。OR 分岐の場合、アクションは 1 つの遷移が発生するまでこの状態です。AND 分岐の場合、その条件が true と評価されるすべての遷移が発生するまで、アクションはこの状態です。

非アクティブ

すべての遷移が発生済みのアクティビティーを特定します。

保留中のインバウンド

そのアクティビティーが AND 合流である仮想スレッドを特定します。これは、この仮想スレッドへの 1 回の遷移が発生したが、プロセスはまだほかの遷移を待機していることを意味します。

すべての遷移が完了したあとで、ワークフロープロセスは実行を開始します。

変更のあとでワークフローのリビジョンを妥当性検査するには、プロジェクトウィンドウでオブジェクトまたはプロセスを選択してから、「Tools」>「Validate」の順に選択してテストします。出力ウィンドウでメッセージを確認します。


Identity Manager には、ワークフローをデバッグする方法を理解するのに役立つチュートリアルが提供されています。このチュートリアルを使用する手順については、次の節「Identity Manager IDE チュートリアルの使用: フォーム、規則、およびワークフローのデバッグ」で説明されています。


Identity Manager IDE チュートリアルの使用: フォーム、規則、およびワークフローのデバッグ

Identity Manager には、フォーム、規則、およびワークフローにデバッガを使用する方法を習得するのに役立つチュートリアル (debugger-tutorial-workflow1.xml) が提供されています。このチュートリアルには、サンプルのフォーム、規則、ワークフローが含まれており、この節を通して同じサンプルが使用されます。


警告

このチュートリアルは、本稼働環境で有効にしないでください。


この節は、次のように構成されています。

はじめに

debugger-tutorial-workflow1.xml チュートリアルを使用するには、次の操作を行います。

  1. 次のいずれかの方法で、debugger-tutorial-workflow1.xml ファイルをインポートします。
    • Identity Manager で、「Configure」>「Import Exchange File」の順に選択します。
      「File to Upload」フィールドに「sample/debugger-tutorial.xml」と入力します。
    • コンソールから、次のように入力します。

      import -v sample/debugger-tutorial.xml

      ファイルが正常にインポートされたら、次のファイルが読み込まれたことを確認します。

      debugger-tutorial-workflow1
      debugger-tutorial-workflow2
      compute-full-name

  2. debugger-tutorial-workflow1 と debugger-tutorial-workflow2 をリポジトリからプロジェクトにダウンロードします (必要に応じて、手順について「リポジトリからのオブジェクトのダウンロードおよび再読み込み」を参照)。
  3. アプリケーションサーバーを再起動したあと、メインメニューバーで「Run」>「Debug Main Project」の順に選択して、Identity Manager IDE デバッガを起動します。

例 1: ワークフローと規則をデバッグする

この例では、ワークフローのデバッグと規則の実行をステップインおよびステップスルーする方法を含む、簡単なワークフローとワークフローを使用する規則とをデバッグする方法を示します。

この練習を完了するには、次のステップを実行する必要があります。

  1. プロセスを起動します。
  2. 実行を開始します。
  3. getFirstName スレッドをステップスルーします。
  4. getlastname スレッドをステップインおよびステップオーバーします。
  5. computefullname 処理をステップインします。
  6. 規則処理をステップスルーします。
  7. ワークフロー処理を完了します。
ステップ 1: プロセスの起動

ワークフローのデバッグプロセスを起動するには、次の手順に従います。

  1. プロジェクトウィンドウで、「Workflow Processes」ノードを展開してから、debugger-tutorial-workflow1.xml ノードを展開します。
  2. debugger-tutorial-workflow1.xml ノードをダブルクリックして、ソースエディタに XML を表示します。
  3. 図 1-24 debugger-tutorial-workflow1.xml ソースを開いたところ
    「Rule Selector」メニューを使用。

  4. <WFProcess> タグの左のマージンを 1 回クリックして、ワークフローの開始位置にブレークポイントを設定します。
  5. 必要に応じて、メインメニューバーで「Debug Main Project」ボタンをクリックします。
  6. Identity Manager にログインします。
  7. 「Server Tasks」>「Run Tasks」の順に選択し、「Available Tasks」ページが表示されたら、「Name」列の debugger-tutorial-workflow1.xml をクリックします。
  8. ソースエディタをチェックして、指定したブレークポイントでデバッグが停止したかを確認します。
  9. 次の点にも注意してください。

    • 呼び出しスタックウィンドウの上部には、Thread [thread name] (suspended) と表示されるはずです。これは、このワークフローがここに示された名前のスレッドによって現在実行されており、設定したブレークポイントで中断していることを意味します。

      「Thread」の下には実行スタックが表示されます。このスタックは逆順のスタックトレースであり、呼び出し元の関数が上に、呼び出される関数が下に表示されます (これは、ほとんどのデバッガでの実行トレースの表示とは逆の順序)。

      スタックの一番上のフレームは「Checkin View (ProcessViewer)」という名前であり、これは、ワークフローがその時点で ProcessViewer の checkinView メソッドによって呼び出されていることを示します。このスタックフレームの Java ソースコードにはアクセスできないため、このフレームをクリックしても新しい情報は表示されません。ただし、スタックフレームは、ワークフローがどの場所から起動されているかについてのコンテキストを提供します。

      スタック内の次のフレームは、ワークフロープロセス (<WFProcess>) の開始位置である現在の実行ポイントに対応しているため、強調表示されています。

    • ローカル変数ウィンドウには、現時点で現在の実行ポイントの範囲内にある、すべての変数のリストが表示されるはずです。次の変数が含まれます。
    • 変数

      説明

      Last Value

      最後の評価の結果

      Interactive

      ビューによってプロセスへの入力として渡される変数。

      WF_CASE_OWNER

      暗黙のワークフロー変数

      fullname

      <Variable> 宣言を使用してワークフロー内で宣言される変数

      WF_CONTEXT

      暗黙のワークフロー変数

      WF_CASE_RESULT

      暗黙のワークフロー変数

      firstName

      <Variable> 宣言を使用してワークフロー内で宣言される変数

      lastName

      <Variable> 宣言を使用してワークフロー内で宣言される変数

これで、実行を開始する準備が完了しました。次のステップでは、実行手順を説明します。

ステップ 2: 実行の開始

実行を開始するには、次の手順に従います。

  1. メインメニューバーで「Step-Into」ボタン 「ステップイン」ボタンをクリックします。 をクリックします。
  2. デバッガが開始アクティビティーに移動します。実行スタックに「Virtual Thread [start, step=0] (executing)」が含まれていることを確認してください。これは、現在実行中の状態である開始アクティビティーの仮想スレッドがあることを示します。

  3. debugger-tutorial-workflow1 フレーム (2 レベル上) をダブルクリックして WFProcess を強調表示します。そこには、呼び出し側の位置が表示されます。
  4. 呼び出しスタックウィンドウ内の太字のエントリをダブルクリックして、現在の行に戻ります。
  5. 「Step-Into」をもう一度クリックします
  6. デバッガはソースエディタの </Activity> 行に移動し、呼び出しスタックウィンドウが表示されている場合は、「Virtual Thread [start, step=0]」が保留中のアウトバウンドになります。

これで、次のステップ 3 に進むことができます。

ステップ 3: getFirstName スレッドのステップスルー

getFirstName スレッドをステップスルーするには、次の手順に従います。

  1. 「Step-Into」をクリックします。
  2. デバッガでは、getFirstName への遷移が強調表示されます。

  3. 「Step-Into」をもう一度クリックします
  4. デバッガはこの遷移の結果として getFirstName の新規仮想スレッドを作成し、現時点でこの仮想スレッドが準備完了の状態になります。

    「Virtual Thread [start, step=0]]」が保留中のアウトバウンドのままであることに注意してください。これは、この仮想スレッドが and-split 操作であるため、可能性のある遷移をすべて引き受ける必要があるからです。

  5. 「Step-Into」をもう一度クリックします
  6. デバッガはソースエディタの getFirstName アクティビティーにジャンプし、呼び出しスタックウィンドウでは状態が準備完了から実行中に変わります。

  7. 「Step-Into」をもう一度クリックします
  8. デバッガは get アクションに移動します。

  9. ここで、「Step-Into」をあと 3 回、またはデバッガがソースエディタ内で </set> タグに達するまでクリックします。
  10. ローカル変数ウィンドウをチェックして、</set> の結果として firstName 値が <String>myfirstname</String> に設定されていることを確認します。

  11. ウォッチポイント表現を追加します。
    1. 必要に応じて、ウォッチポイントウィンドウを開きます。ウィンドウを右クリックして、メニューから「New Watch」を選択します。
    2. 「New Watch」ダイアログが表示されたら、次の XPRESS 文を「Watch Expression」フィールドに入力して、「OK」をクリックします。
    3. <ref>firstName</ref>

      デバッガはウォッチポイント表現を評価しますが、その値は手順 5 で設定した値である <String>myfirstname</String> になるはずです。

ステップ 4: getLastName スレッドのステップインおよびステップスルー

次の手順に従って、getLastName スレッドをステップインおよびステップオーバーします。

  1. 「Step-Into」をあと 3 回、またはデバッガが getFirstName</Activity> 行に達するまでクリックします。
  2. Virtual Thread (getFirstName, step=1) が、保留中のアウトバウンドになっていることを確認します。

  3. 「Step-Into」をクリックします。
  4. デバッガは、仮想スレッド (start, step=0) に戻り、getLastName への遷移の処理を開始しようとします。

  5. 「Step-Into」をクリックします。
  6. すべての遷移が処理されているために start は非アクティブになり、またこの遷移により、getLastName は準備完了状態になっています。

  7. 「Step-Into」をクリックします。
  8. この時点で、「start Virtual Thread」は非アクティブであるために消えて、デバッガは Virtual Thread (getLastName, step=2) に移動し、これが実行中の状態になります。

  9. 「Step-Over」をクリックして、getLastName の終わりまでスキップします。
  10. ローカル変数ウィンドウを確認すると、lastName 変数が <String>mylirstname</String> に設定されているはずです。getFirstName および getLastName の両方の仮想スレッドは、保留中のアウトバウンド状態です。

  11. 「Step-Into」をクリックします。
  12. デバッガは getFirstName から computeFullName に遷移します。

  13. 「Step-Into」をクリックします。
  14. getFirstName は非アクティブになり、新しく「Virtual Thread (computeFullName, step=3)」が作成されます。このスレッドは、getLastName からのインバウンド遷移をまだ待機しているため、「pending inbound」状態です (待機が発生するのは、これが and-join 操作であるためです。or-join 操作の場合は、プロセスの状態がただちに「ready」になる)。

  15. 「Step-Into」をクリックします。
  16. デバッガは getLastName から computeFullName への遷移に遷移します。

ステップ 5: computeFullName 処理のステップイン

次の手順を使用して、computeFullName 処理にステップインします。

  1. 「Step-Into」をクリックします。
  2. この遷移により、「Virtual Thread (computeFullName, step=3)」の状態が、保留中のインバウンドから準備完了に変化します。

  3. 「Step-Into」をクリックします。
  4. この時点で、Virtual Thread (computeFullName, step=3) の状態は、実行中です。

  5. 「Step-Into」をあと 5 回クリックします。
  6. ソースエディタを確認すると、デバッガが firstName</argument> タグ上にあり、ローカル変数ウィンドウで Last Value が <String>myfirstname</String> になっています。この値は firstName 引数に渡されます。

ステップ 6: 規則処理のステップスルー

規則処理をステップスルーするには、次の手順に従います。

  1. 「Step-Into」をあと 3 回クリックします。
  2. デバッガが「Compute-Full-Name」規則にステップインします。

  3. 呼び出しスタックウィンドウで、フレームをクリックして 1 つ上のフレーム上に移動します。
  4. debugger-tutorial-workflow1 内の <rule> 呼び出しが強調表示され、規則の呼び出し元の場所を示します。

  5. 太字の行をダブルクリックして、その行を再選択します。
  6. 「Step-Into」をあと 3 回、またはデバッガが </ref> タグに達するまでクリックします。
  7. Last Value エントリは、<ref>firstName</ref> の結果である <String>myfirstname</String> になっています。

  8. 「Step-Into」をあと 3 回、またはデバッガが </concat>  タグに達するまでクリックします。
  9. これで、Last Value エントリが <concat> 式の結果になりました。

    <String>myfirstname mylastname</String>

  10. 「Step-Into」をあと 2 回クリックします。デバッガは </rule> タグに戻ります。
ステップ 7: ワークフロープロセスの完了

ワークフロープロセスを完了するには、次の手順に従います。

  1. </set> 要素に達するまで「Step-Into」をクリックします。
  2. fullname 変数が myfirstname mylastname に更新されていることが確認できます。

  3. 「Step-Into」をあと 2 回クリックします。
  4. この時点で、「Virtual Thread (computeFullName, step=3)」の状態は、保留中のアウトバウンドです。

  5. 「Step-Into」をあと 5 回クリックします。
  6. end が準備完了、続いて実行中になり、そのあとデバッガは </WFProcess> タグに達します。これは、プロセスが完了したことを示します。

  7. 「Step-Into」をクリックします。
  8. 呼び出しスタックウィンドウには「After Checkin view」と表示されます。これは、ワークフローを呼び出した、ビューのチェックイン操作が完了したことを示します。

  9. メインメニューバーの「Continue」ボタンをクリックして、実行を再開します。
  10. ブラウザの要求がタイムアウトしていない場合、プロセスダイアグラムを伴う「Task Results」ダイアグラムが表示されます。

例 2: 手動アクションとフォームを含むワークフローのデバッグ

この例では、手動アクションとフォームを含む、サンプルワークフローのデバッグ方法を説明します。debugger-tutorial-workflow2 チュートリアルファイルを使用し、次の手順を実行します。

  1. 「Workflow Processes」ノードを展開し、debugger-tutorial-workflow2 をダブルクリックしてソースエディタに XML を表示します。
  2. <WFProcess...> タグにブレークポイントを設定します。
  3. 必要に応じて、メインメニューバーで「Debug Main Project」ボタンをクリックします。
  4. Identity Manager にログインし、「Server Tasks」 >「Run Tasks」の順にナビゲートします。
  5. 「Available Tasks 」ページが表示されたら、「Name」列から debugger-tutorial-workflow2 を選択します。
  6. 設定したブレークポイントでデバッガが停止していることを確認します。

  7. 「Step-Into」を 6 回、または、デバッガが <ManualAction... name='getNameAction'> に達するまでクリックします。
  8. 「Step-Into」をクリックします。
  9. 別のスレッドでフォーム処理が発生するという説明の「Stepping into Manual Action」ダイアログが表示されたら、「Yes」または「Always」をクリックします。
  10. 処理が行われていることを確認するために、ブレークポイントを <Form> タグに設定します。
  11. フォーム処理が完了すると、ワークフローは別のスレッドでの実行を継続します。その結果、</ManualAction> にブレークポイントを設定して、フォームが処理を完了したあとのワークフロー処理を監視する必要があります。

    デバッガでは、指定どおりに <Form> タグと </ManualAction> タグにブレークポイントが設定されています。加えて、呼び出しスタックウィンドウには「After Checkin view」が示されます。ワークフロー処理は可能なかぎり (手動アクションが完了するまで) 進行済みであるため、ワークフロープロセスからのステップアウトが完了します。

  12. 「Continue」をクリックします。デバッガは <Form> 要素に設定されたブレークポイントで処理を停止します。
  13. 呼び出しスタックウィンドウで、次のエントリに注目します。

    • 取得 - フォーム実行が「Derivation」パス上にあることを示します。
    • 「Checkout View (WorkItem:...)」 - 特定の作業項目に対し、ビューのチェックアウトのコンテキストで処理が発生していることを示します。
    • 「ManualAction forms」 - 作業項目ビューに対して作用し、変数オブジェクトを通じてワークフロー変数を操作します。変数オブジェクトを展開して、null でないワークフロー変数を表示します。
  14. このフォームには <Derivation> 式が含まれないため、「Continue」をクリックして次の処理フェーズに進みます。フォーム処理の「HTML Generation (root component)」パスが開始されます。
HTML 生成フェーズ (root コンポーネント)

root コンポーネントの HTML を生成するには、次の手順に従います。

  1. 「Step-Into」を 2 回クリックします。
  2. デバッガは、タイトルの <Property> 要素を処理しましたが、このプロパティーの値がローカル変数ウィンドウの Last Value エントリに入ります。

  3. 「Step-Into」をあと 3 回クリックします。
  4. このパスではページの root コンポーネントの構築のみを扱うため、デバッガはフォームフィールドをスキップして </Form> 要素に直接移動します。

  5. 「Continue」をクリックして、フォーム処理の HTML 生成 (サブコンポーネント) パスを開始します。
HTML Generation (サブコンポーネント)

サブコンポーネントの HTML を生成するには、次の手順に従います。

  1. 「Step-Into」を 13 回、または、デバッガが </Form> タグに達するまでクリックします。
  2. デバッガはこれらの各フィールドを反復処理し、それらの表示プロパティーを評価します。

  3. 「Continue」をクリックします。
  4. 実行が再開されたため、デバッガには中断されたスレッドは表示されません。Identity Manager ブラウザウィンドウに制御が戻ります。

  5. Identity Manager ブラウザウィンドウに戻り、入力を求められたら姓と名を入力して「Save」をクリックします。
  6. デバッガフレームに戻り、デバッガがブレークポイントで中断していることを確認します。

  7. ローカル変数ウィンドウで、変数サブツリーを展開して、今入力した名前が firstName および lastName の値として表示されることを確認します。
  8. デバッガはこの時点で、フォーム処理の確認フェーズです。

確認

このフォームには確認フィールドがないため、処理は発生しません。
「Continue」をクリックして、フォーム処理の検証フェーズを開始します。

検証と展開

このフォームには検証式が含まれないため、明示的な処理は発生しません。

  1. 「Continue」をクリックして検証フェーズをスキップし、フォーム処理の展開フェーズに進みます。
  2. 「Step-Into」を 6 回クリックします。
  3. デバッガは variables.fullName フィールドの <Expansion><rule> タグに移動します。

  4. 「Step-Into」を 5 回クリックします。デバッガは <Rule> 要素にステップインします。
  5. 「Step-Into」を 7 回、または、デバッガが </Rule> 要素に達するまでクリックします。
  6. 「Last Value」に姓名が入ります。

  7. 「Step-Into」をもう一度クリックすると、フォームでの処理が再開します。
  8. 「Step-Into」をもう一度クリックします
  9. トップレベルの variables.fullName には、実行されたばかりの展開式の値が格納されています。フォーム処理中はフォーム出力が独自の一時的な form_outputs データ構造に保持され、そこではパスの式が平坦化されるため、この値は variables データ構造の子ではなくトップレベルのエンティティーとなります。

    フォーム処理のあと、フォーム出力は元のビューに同化されます。暗黙的な変数 form_inputs および form_outputs において、form_inputs は未変更の作業項目ビューを示し、form_outputs は、フォーム処理の完了後にビューに同化される出力フィールドを示します。

    一般に、form_inputs はビューを特定し、form_outputs にはビューに同化されるデータが含まれます。ただし、Active Sync フォームのように、必ずしもすべてのフォームがビューに結び付けられるわけではありません。フォームエンジンは一般的なデータマッピングエンジンであり、フォーム入力からフォーム出力へのマッピングを行います。ビューハンドラは、フォームエンジンにビューを渡す処理と、出力をビューに戻して反映する処理を受け持ちます。

  10. 「Continue」をクリックします。
  11. デバッガは </ManualAction> ブレークポイントに到達します。これは、デバッガが手動アクションにステップインしたときにすでに設定したブレークポイントです。firstName 変数および lastName 変数は、入力した値です。fullName 値は、実行されたばかりの展開式の結果です。

  12. 「Step-Into」を 5 回、<ManualAction... name='displayNameAction'> に達するまでクリックします。
  13. 「Step-Into」をもう一度クリックします (選択を求められた場合、「Yes」または「Always」をクリックする)。
  14. 「Continue」をクリックします。
  15. この時点で、デバッガは displayNameForm の「Derivation」パスの位置です。

取得と HTML 生成 (root コンポーネント)

取得フェーズと HTML 生成フェーズを完了するには、次の手順に従います。

  1. 「Continue」をクリックして、displayNameForm の HTML 生成 (root コンポーネント) 処理を開始します。
  2. 「Step-Into」を 8 回、または、デバッガが subTitle</Property> 要素に達するまでクリックします。
  3. 「Continue」を 2 回クリックします。
  4. デバッガは次のメッセージを表示します。

    No suspended threads because execution has resumed. Control has now returned to the browser window.

  5. Identity Manager ブラウザウィンドウに戻ります。
  6. 表示される情報は、入力したものと同じです。

  7. 「Save」をクリックして、デバッガフレームに戻ります。
  8. この時点で、デバッガは「Confirmation」パスの位置であり、displayNameForm を処理しています。

検証と展開

検証と展開を開始するには、次の手順に従います。

  1. 「Continue」をクリックして検証パスを開始します。
  2. 「Continue」をクリックして展開パスを開始します。
  3. 「Continue」をもう一度クリックします。
  4. 手動アクションが完了したため、この時点でデバッガは </ManualAction> タグの位置です。この時点で、ワークフロー処理は再開されています。

  5. 「Step-Into」を 5 回、または、デバッガがワークフローの実行が完了したことを示す </WFProcess> タグに達するまでクリックします。
  6. 「Continue」をクリックします。
  7. Identity Manager ウィンドウに戻ると、ワークフロープロセスダイアグラムが表示されているはずです。「OK」をクリックします。

例 3: タブ付きユーザーフォームと更新ビューのデバッグ

このサンプルデバッグの手順では、フォームまたはワークフローを起動した場所に関係なく、デバッガのブレークポイントがどのように適用されるかを示します。

この手順を完了するには、次のステップを実行する必要があります。

  1. ブレークポイントを設定します。
  2. 新しいユーザーを作成します。
  3. ビューの更新前の結果を表示します。
  4. ビューの更新後の結果を表示します。
  5. フォームをステップスルーします。
  6. フォームの処理を終了します。
ブレークポイントの設定

ブレークポイントを設定するには、次の手順に従います。

  1. ブレークポイントウィンドウを右クリックして、メニューから「Breakpoints」を選択します。
  2. 「Breakpoints」ダイアログが表示されたら、「Debugger」メニューから「XPRESS」を選択した後、「View」タブを選択します。
  3. 「Refresh View」チェックボックスを有効にします。
  4. これで、実行中にビューが更新されるたびに、デバッガでブレークポイントが実行されるようになります。

新規ユーザーの作成

新規ユーザーを作成するには、次の手順に従います。

  1. Identity Manager で、「Accounts」タブを選択し、左上のドロップダウンメニューから「New User」を選択します。
  2. 「Create User」ページが表示されたら、jean faux のように名と姓を入力します。
  3. 別のタブをクリックして、ビューの更新操作をトリガーします。
  4. Identity Manager がブレークポイントに到達して中断していることに注意してください。

「Before Refresh View」結果の表示

Identity Manager IDE に戻り、次の点を確認します。

ローカル変数ウィンドウで、グローバルサブツリーを展開して、フォームで入力した firstnamelastname の値を探します。fullname が現時点で null であることを確認します。

「After Refresh View」結果の表示

「After Refresh View」の結果を表示する手順は、次のとおりです。

  1. 「Continue」をクリックします。
  2. 呼び出しスタックウィンドウには、「After Refresh View」が一覧表示されます。ここには、更新操作が発生した直後のビューの状態が表示されます。fullname の値はこの時点では「jean faux」です。

  3. 「Continue」をもう一度クリックします。
  4. フォームが実行を再開します。Identity Manager ブラウザウィンドウに戻って、「First Name」を jean2 に変更します。別のタブをクリックして、もう一度更新をトリガーします。

    Identity Manager IDE ソースエディタに戻ると、フォーム処理は「Before Refresh View」の箇所で中断しています。

フォームのステップスルー

フォームをステップスルーするには、次の手順に従います。

  1. 「Step-Into」をクリックして、実行内の姓名の展開部分を表示します。
  2. 呼び出しスタックウィンドウに「Before Expansion,」が一覧表示されます。これは、フォームの変数が展開されていないことを示します。

  3. 「Step-Into」をもう一度クリックします
  4. 呼び出しスタックウィンドウに「Before Expansion, iteration=0」がリストされます。これは、最初の「Expansion」パスの前にフォーム変数が出現することを示します。

  5. 「Step-Into」をもう一度クリックします
  6. 呼び出しスタックウィンドウに匿名ソース (Tabbed User Form (Anonymous, line: 3)(begin)) が一覧表示されます。匿名ソースは一時的に作成されるラッパーフォームであり、MissingFields フォームに関連します。

  7. タブ付きユーザーフォームの先頭に達するまで、「Step-Into」をさらに 2 回クリックします。
  8. <Field name='global.fullName'>」に達するまで「Step-Into」をクリックし続けます (約 20 〜 30 回のステップイン操作)。
  9. 15 回または </Field> 要素に達するまで「Step-Into」をクリックします。
  10. ステップ操作中に、</concat> タグの Last Value エントリが、jean2 faux になっており、form_outputs 値が global.fullname: jean2 faux になっていることを確認します。

フォーム処理の完了

フォーム処理を完了するには、次の手順に従います。

  1. 「Step-Out」を 7 回クリックします。
  2. この時点で、呼び出しスタックウィンドウが示す内容は次のようになるはずです。

    Refresh View (User)
    After Expansion

    ローカル変数ウィンドウには、すべての展開が実行されたあとのフォーム変数の状態が表示されます。

  3. 「Step-Out」をもう一度クリックします。
  4. これで、「After Refresh View」に到達しました。ローカル変数ウィンドウには、ビュー変数が表示されています。

  5. グローバルサブツリーを展開します。
  6. fullnamejean2 faux になっていることを確認します。

  7. 「Continue」をクリックします。

デバッガの停止

Identity Manager IDE デバッガを停止するには、メインメニューバーから「Run」>「Finish Debugging Session」の順に選択します。

デバッガの無効化

デバッグ終了後には必ずデバッガを無効にし、他のユーザーが誤って本稼働環境のアプリケーションサーバーに接続することのないようにします。

デバッガを無効化するには、次の手順に従います。

  1. 「Projects」タブから、「Generic Objects」ノードを展開し、「System Configuration」をダブルクリックして、ソースエディタウィンドウに XML を表示します。
  2. 下方へスクロールするか「Edit」>「Find」を使用して serverSettings.<server>.debugger.enabled 属性を探し、次の例に示されている方法でその値を false に変更します。
  3. コード例 1-1 debugger 属性 XML の編集

    <Attribute name='serverSettings'>

            <Object>

              <Attribute name='default'>

                <Object>

                  <Attribute name='debugger'>

                    <Object>

                      <Attribute name='enabled'>

                        <Boolean>false</Boolean>

                      </Attribute>

  4. メインメニューバーで、「File」>「Save」の順に選択して、変更を保存します。
  5. アプリケーションサーバーを再起動します。

テスト環境の外部でのデバッガの実行

デバッグが必要な問題が本稼働環境に見つかった場合は、その問題をテスト環境で再現してデバッグを試みるのが最善です。デバッガでブレークポイントを設定すると、大量のトラフィックが発生している本稼働環境内のアプリケーションサーバーを短時間のうちに停止させる可能性があります。ブレークポイントを設定する位置によっては、他者がシステムを使用できないようにブロックすることも可能です。

独立したテスト環境でデバッグを実行できない場合は、次の手順に従います。

  1. クラスタ内のノードのうちの 1 つをオフラインにすることにより、すべての有効なトラフィックをクラスタのサブセットに振り分けます (以後、このタスクの説明では、このノードを server-a とする)。
  2. Identity Manager IDE を使用し、SystemConfiguration serverSettings.server-a.debugger.enabled プロパティーを true に設定してシステム設定オブジェクトを編集します。
  3. server-a を再起動し、システム設定オブジェクトのプロパティー設定の変更を有効にします。
  4. 適切なホスト (server-a)、ポート、コンテキストパス、ユーザー、およびパスワードを指定して、プロジェクト設定を変更します。
  5. デバッガを開始します。
  6. デバッグが終了したら、serverSettings.server-a.debugger.enabledfalse に設定し、server-a を再起動して、稼働中の本稼働環境にデバッガが接続しないようにします。
  7. server-a をオンラインクラスタに再統合します。


NetBeans からの Identity Manager IDE のアンインストール

何らかの理由で、Identity Manager IDE モジュールを NetBeans からアンインストールする場合は、次の手順を実行します。

  1. 必要に応じて、NetBeans を開きます。
  2. NetBeans メニューバーで「Tools」>「Module Manager」の順に選択します。
  3. 「Module Manager」ダイアログが表示され (図 1-25)、インストール済みのモジュールがすべてリストされます。「Active」列には、その中の有効なモジュールが示されます。


    Identity Manager IDE では、必要のないモジュールを無効化することにより、起動時間を最小化し、メモリーを節約することができます。無効化されたモジュールはインストールディレクトリから削除されず、単に Identity Manager IDE によって無視されます。無効化されたモジュールは、いつでもふたたび有効にすることができます。


    図 1-25 アンインストールするモジュールの選択
    Identity Manager IDE モジュールを「Module Manager」リストから選択します。

  4. モジュールのリストから Sun Identity Manager を選択します。
  5. 「Uninstall」をクリックします。
  6. Sun Identity Manager モジュールをアンインストールすることを確認するポップアップが表示されます。「OK」をクリックして、アンインストールプロセスを続行します。
  7. プロセスが完了したら、モジュールマネージャーを閉じます。


前へ      目次      次へ     


Part No: 820-1583.   Copyright 2006 Sun Microsystems, Inc. All rights reserved.