NetBeans Enterprise Pack を使用した BPEL モジュールプロジェクトでのリファクタリング
最終更新日付:2006 年 10 月 23 日
このチュートリアルでは、NetBeans Enterprise Pack でのリファクタリングについて説明します。NetBeans Enterprise Pack を追加した NetBeans IDE は、XML スキーマ、ビジネスプロセス実行言語 (BPEL)、および Web サービス記述言語 (WSDL) ソースファイルのリファクタリングをサポートします。リファクタリングを使用して、ローカルコンポーネントおよび大域コンポーネントの名前の変更と安全な削除を行うことができます。IDE は、名前の変更アクションまたは安全な削除アクションがプロジェクトツリー全体に伝達されることを保証します。このため、参照を手動で変更する必要がなくなります。リファクタリングにより、XML スキーマファイルおよび WSDL ファイルを変更する複雑さが軽減され、不要な繰り返し作業が少なくなります。IDE のリファクタリング機能は、プロジェクトの影響を受ける部分をユーザーに示し、ユーザーのコードに必要な変更をすべて行います。このチュートリアルでは、BPEL モジュールプロジェクト内のリファクタリング機能を概観します。
前提条件
このチュートリアルは、NetBeans IDE についての基本的な知識またはプログラミング経験を持つユーザーを想定しています。
システム要件
このチュートリアルでは、ユーザーのシステムが、『NetBeans Enterprise Pack 5.5 リリースノート』の「システム要件」の項で指定された要件を満たしていることを想定しています。
このチュートリアルに必要なソフトウェア
開始する前に、コンピュータに次のソフトウェアをインストールしておく必要があります。
- NetBeans IDE 5.5 と NetBeans Enterprise Pack 5.5 (ダウンロード)
目次
ページの先頭へ
SynchronousSample プロジェクトの作成
このチュートリアルでは、「同期 BPEL プロセス」サンプルプロジェクトを使用します。
- IDE のメインメニューから、「ファイル」>「新規プロジェクト」を選択します。
- 「カテゴリ」リストで、「サンプル」ノードを展開し、「サービス指向アーキテクチャー」ノードを選択します。
- 「プロジェクト」リストで、「非同期 BPEL プロセス」を選択します。
- 「次へ」をクリックします。
- プロジェクト名、SynchronousSample、およびプロジェクトの場所のデフォルト値を受け入れるか、必要に応じて値を変更します。
- 「完了」をクリックします。
この時点で、「プロジェクト」ウィンドウには 2 つのノードが含まれています。「SynchronousSample」という BPEL モジュールプロジェクトと「SynchronousSampleApplication」という複合アプリケーションプロジェクトです。
ページの先頭へ
XML スキーマコンポーネントの名前の変更
- 「プロジェクト」ウィンドウで、「SynchronousSample」プロジェクトノードと「プロセスファイル」ノードを展開します。
- 「SynchronousSample.xsd」ノードをダブルクリックします。
XML スキーマファイルのスキーマビューが表示されます。
- スキーマビューの最初の列で、「要素」ノードを選択します。
ビューの 2 番目の列に typeA 要素が表示されます。
- 2 番目の列で「typeA」ノードを選択して右クリックし、「リファクタリング」>「名前を変更」を選択します。
「名前を変更」ダイアログが表示されます。
- 「新しい名前」フィールドに、「typeB」と入力します。
- 「すべての変更をプレビュー」チェックボックスが選択されていることを確認し、「次へ」をクリックします。
「すべての変更をプレビュー」チェックボックスは、リファクタリングの変更を適用する前に変更内容を表示することを指定します。
IDE の下部に「XML リファクタリング」ウィンドウが表示されます。
注: 次の手順へ進む前に、 後述の「「XML リファクタリング」ウィンドウの概要」の情報を確認してください。
- 「XML リファクタリング」ウィンドウで、「リファクタリングを実行」をクリックし、名前の変更アクションを実行します。
リファクタリングが完了すると、typeA は typeB に名前が変更され、このスキーマコンポーネントへのすべての参照は、新しい名前が反映されるよう変更されます。
「XML リファクタリング」ウィンドウの概要
ここでは、「リファクタリング」メニューから「名前を変更」アクションを開始したあとに表示される「XML リファクタリング」ウィンドウについて説明します。

表示を拡大
次の点に注意してください。
- ステータスバーに、typeA 要素の 2 つの使用状況が見つかったことが示されています。
- このウィンドウのツリー区画には、typeA 要素のすべての使用状況が示されます。
ツリー区画でノードを選択すると、それに対応するグラフ区画内のノードが強調表示されます。
- グラフ区画には、ツリー区画の情報がグラフィカルに表示されます。
グラフ区画でノードを選択すると、それに対応するツリー区画内のノードが強調表示されます。
グラフ区画内のファイルノードを選択して右クリックし、ポップアップメニューから「収縮」または「展開」を選択することにより、それらのノードを展開したり収縮できます。
- typeA の使用状況が見つかったファイルの一覧には、SynchronousSample.wsdl ファイルが含まれています。これは、このファイルが typeA 要素を参照しているためです。
「XML リファクタリング」ウィンドウから XML スキーマエディタのビューへの移動
グラフ区画から右クリックのポップアップメニューを使用して、XML スキーマエディタの別のビューへ移動できます。
- 「XML リファクタリング」ウィンドウのグラフ区画で、「"typeA" 参照」のノードの 1 つを選択し、右クリックして「ソースへ」を選択します。
エディタのソースビューに SynchronousSample.xsd ファイルが表示され、typeA 要素のブロックの 1 行目が強調表示されます。
- 「XML リファクタリング」ウィンドウのグラフ区画で、「typeA」 ノードを選択し、右クリックして「移動」>「スキーマ」を選択します。
SynchronousSample.xsd ファイルのエディタのタブはアクティブタブとなり、スキーマビューの 2 番目の列で「 typeA」ノードが強調表示されます。
生産性向上のためのヒント
次の説明に従って、「XML リファクタリング」ウィンドウのグラフ区画でズーム、パン、およびドラッグを行うことができます。
- 縮小するには、次の手順に従います。グラフィックを右クリックして上にドラッグします。
- 拡大するには、次の手順に従います。グラフィックを右クリックして下にドラッグします。
- パンするには、次の手順に従います。クリックして任意の方向にドラッグします。
- ノードをドラッグするには、次の手順に従います。ノードをクリックしてドラッグします。
ノードを表示領域の外までドラッグした場合は、次のいずれかの方法で表示領域内に戻すことができます。
- ノードが表示領域に再び表示されるまで、ノードの方向にパンします。
- ノードが表示領域に表示されるまで縮小します。
- 「XML リファクタリング」ウィンドウのツールバーで、「再表示」ボタンをクリックします。
ページの先頭へ
WSDL コンポーネントの名前の変更
- 「プロジェクト」ウィンドウで、「SynchronousSample」プロジェクトノードと「プロセスファイル」ノードを展開します。
- 「SynchronousSample.wsdl」ノードをダブルクリックします。
このファイルが IDE 内ですでに開かれていた場合、SynchronousSample.wsdl のタブはエディタ内でアクティブタブになります。
このファイルが IDE 内で開かれていなかった場合、IDE は WSDL ファイル用に WSDL エディタの「WSDL」ビューを表示します。
- 「WSDL」ビューがアクティブビューでない場合は、エディタのツールバーで「WSDL」ボタンをクリックします。
- 「WSDL」ビューの「メッセージ」>「responseMessage」ノードの下で、「resultType」ノードを選択します。
- 選択項目を右クリックし、「リファクタリング」>「名前を変更」を選択します。
「名前を変更」ダイアログが表示されます。
- 「新しい名前」フィールドに、「outputType」と入力します。
- 「すべての変更をプレビュー」チェックボックスを選択された状態のままにし、「次へ」をクリックします。
「すべての変更をプレビュー」チェックボックスは、リファクタリングの変更を、適用する前に表示することを指定します。
IDE の下部に「XML リファクタリング」ウィンドウが表示されます。

「XML リファクタリング」ウィンドウに resultType の使用状況 (この例では 1 つ) が表示されることを確認してください。
使用状況が入っているファイルの一覧には、SynchronousSample.bpel が含まれます。これには、resultType メッセージへの参照が含まれています。
注: 「「XML リファクタリング」ウィンドウの概要」に、「XML リファクタリング」ウィンドウに関する詳細が提供されています。
- 「XML リファクタリング」ウィンドウで、「リファクタリングを実行」をクリックし、名前の変更アクションを実行します。
リファクタリングが完了すると、resultType は outputType に名前が変更され、このコンポーネントへのすべての参照は、新しい名前が反映されるように変更されます。
ページの先頭へ
コンポーネントの安全な削除
複数のプロジェクトファイル内で使用されているコンポーネントをリファクタリング削除機能によって削除する場合、IDE はプロジェクト内でのそのコンポーネントの使用状況をすべて検出し、リファクタリングアクションのプレビューを表示します。これは、変更をプレビューしないことを選択した場合でも表示されます。単一のプロジェクトファイル内で使用されているコンポーネントをリファクタリング削除機能によって削除する場合は、リファクタリングアクションをプレビューせずにコンポーネントを削除することはできません。
参照のあるコンポーネントの削除
この手順では、リファクタリングによる削除機能を使用して、プロジェクト内の別のファイルで参照されているコンポーネントの場合、リファクタリングでの変更に確認が必要となることを学習します。
- IDE 内で SynchronousSample.xsd ファイルが開かれていない場合は、この時点で開いてください。
- スキーマビューの最初の列で、「要素」ノードを選択し、2 番目の列で「typeB」ノードを右クリックして「リファクタリング」>「安全な削除」を選択します。
「安全な削除」ダイアログが開きます。
- 「すべての変更をプレビュー」チェックボックスを選択解除し、「次へ」をクリックします。
「すべての変更をプレビュー」チェックボックスを選択解除しても、「安全な削除」ダイアログは、警告を表示するようにこの時点で更新されます。
- 「使用状況を検索」をクリックします。
「XML 使用状況」ウィンドウに、ステータスバーに示されるように、typeB のすべての使用状況が表示されます。この例では 2 つの使用状況が表示されます。
この 2 つの使用状況は、SynchronousSample.wsdl ファイル内にあります。
- 「typeB を削除 を再実行」をクリックします。
「安全な削除」ダイアログが再び表示されます。
- 「安全な削除」ダイアログで、「取消し」をクリックします。
注: この時点で、削除アクションを取り消しています。これは、この要素を使用して、リファクタリングでの 取り消しと再実行の機能を確認するためです。
参照のないコンポーネントの削除
この手順では、参照のない新しいスキーマコンポーネントを作成してから、リファクタリングを使用してそのスキーマコンポーネントを削除します。
- SynchronousSample.xsd のスキーマビューの最初の列で、「要素」ノードを選択して右クリックし、ポップアップメニューから「追加 要素」を選択します。
「要素」ダイアログが開きます。
- 「要素」ダイアログのデフォルトのまま、「了解」をクリックします。
この時点で、スキーマビューの 2 番目の列に、「newElement」という要素ノードが表示されます。
- スキーマビューの 2 番目の列で、「newElement」ノードを右クリックし、「リファクタリング」>「安全な削除」を選択します。
「安全な削除」ダイアログが開きます。
- 「すべての変更をプレビュー」チェックボックスを選択解除し、「次へ」をクリックします。
IDE はリファクタリングを実行し、newElement を削除します。
ページの先頭へ
リファクタリングアクションの取り消しと再実行
リファクタリングアクションの実行後、そのアクションを元に戻すことができます。そのあと、元に戻した操作を「元に戻す」場合は、アクションを再実行することができます。
注: リファクタリングアクションを元に戻すには、IDE の「編集」メニューでなく、 ポップアップメニューに表示される「リファクタリング」メニューからアクションを起動する必要があります。
- newElement スキーマコンポーネントの安全な削除を元に戻すには、SynchronousSample.xsd のスキーマビューの 2 番目の列で、「typeB」ノードを右クリックし、「リファクタリング」>「[安全な削除] を元に戻す」を選択します。
以前に「リファクタリング」メニューから起動した安全な削除が元に戻され、newElement が復元されます。
- SynchronousSample.xsd のスキーマビューの 2 番目の列で、「typeB」ノードを右クリックし、「リファクタリング」>「名前を変更」を選択します。
「名前を変更」ダイアログが表示されます。
- 「新しい名前」フィールドに、「typeA」と入力します。
- 「すべての変更をプレビュー」チェックボックスを選択解除し、「次へ」をクリックします。
typeB 要素の名前が typeA に変更されます。
- リファクタリングでの名前の変更アクションを元に戻すには、2 番目の列で「typeA」ノードを選択して右クリックし、「リファクタリング」>「[名前を変更] を元に戻す」を選択します。
「リファクタリング」メニューから起動した名前の変更が元に戻され、要素の typeB 名が復元されます。
- 前回の元に戻すアクションが正しく機能したかどうかを確認するには、スキーマビューの 2 番目の列で、「typeB」ノードを右クリックし、「使用状況を検索」を選択します。
「XML 使用状況」ウィンドウが表示されます。すべての参照が typeB を正しく参照していることを確認してください。
「XML 使用状況」ウィンドウのツリー区画で、「inputType」ノードおよび「outputType」ノードをダブルクリックし、参照をソースビューに表示します。
ページの先頭へ
まとめ
このチュートリアルでは、NetBeans Enterprise Pack でのリファクタリングについて説明しました。新しい BPEL モジュールプロジェクトを作成し、リファクタリング機能を使用して、参照のあるコンポーネントおよび参照のないコンポーネントの名前の変更と削除を行いました。また、リファクタリングアクションを元に戻す方法と再実行の方法についても学習しました。
ページの先頭へ