Dreamweaver での ColdFusion コンポーネントの使用

最終更新日 : 2024年4月25日
メモ

ColdFusion のサポートは Dreamweaver 以降で削除されました。

ColdFusion コンポーネントについて

ColdFusion コンポーネント(CFC)ファイルを使用すると、アプリケーションとビジネスロジックを 自己完結型の再利用可能な単位にカプセル化できます。CFCは、Webサービスを作成するための高速で簡単な方法も提供します。

CFC は ColdFusion マークアップ 言語(CFML)で記述された再利用可能なソフトウェア単位で、 コードの再利用と保守が簡単になります。

Dreamweaver では CFC を操作できます。 CFC タグと構文の情報については、Dreamweaver 内から ColdFusion ドキュメントを参照してください(ヘルプ > ColdFusion の使用)。

メモ

CFC は、ColdFusion MX 以降でのみ使用できます。 CFC は ColdFusion 5 ではサポートされていません。

CFCは、開発者がWebサイトの要素をカプセル化するためのシンプルで強力な方法を提供することを目的としています。一般的に、 アプリケーションまたはビジネスロジックにはコンポーネントを使用する必要があります。カスタマイズされた挨拶、動的メニューなどのプレゼンテーション要素には、カスタムタグを使用してください。

他の多くの種類の構築と同様に、動的サイトは多くの場合 交換可能なパーツの恩恵を受けることができます。たとえば、動的サイト では同じクエリを繰り返し実行したり、 買い物かごページの合計価格を計算し、アイテムが 追加されるたびに再計算したりすることがあります。これらのタスクは、コンポーネントによって処理されます。 アプリケーションの他の部分に最小限の影響を与えながら、 コンポーネントを修正、改善、 拡張、さらには置換することができます。

オンラインストアが注文の 価格に基づいて送料を計算するとします。20ドル未満の注文では送料は4ドル、20ドルから40ドルの間の注文では送料は6ドル、以下同様となります。買い物かごページとチェックアウトページの両方に送料を計算する ロジックを挿入することもできますが、それでは HTML プレゼンテーションコードと CFML ロジックコードが混在し、一般的に コードの保守と再利用が困難になります。

Pricing という CFC を作成し、その中に ShippingCharge という関数などを含めます。この関数は 価格を引数として受け取り、送料を返します。たとえば、引数の値が 32.80 の場合、関数は 6 を返します。

買い物かごページとチェックアウトページの両方で、 ShippingCharge 関数を呼び出すための特別なタグを挿入します。ページがリクエストされると、関数が呼び出され、送料が ページに返されます。

その後、ストアは特別なプロモーションを発表しました:100 ドル以上のすべての注文で送料無料です。送料を 1 か所(Pricing コンポーネントの ShippingCharge 関数)で変更すると、その関数を使用するすべてのページで自動的に 正確な送料が取得されます。

コンポーネントパネルの概要(ColdFusion)

Components パネル(ウィンドウ > Components)を使用して ColdFusion コンポーネントを表示および編集し、CFM ページがリクエストされたときに関数を呼び出すコードを ページに追加します。

メモ

Components パネルは、Dreamweaver で ColdFusion ページを表示しているときにのみ 使用できます。

Dreamweaver での CFC の作成または削除

Dreamweaver では、CFC やその関数を視覚的に定義できます。 Dreamweaver は .cfc ファイルを作成し、必要な CFML タグを挿入します。

メモ

コンポーネントによっては、一部のコードを手動で入力する必要があります。

DreamweaverでColdFusionページを開きます。

Componentsパネル(ウィンドウ/Components)で、ポップアップメニューから「CF Components」を選択します。

プラス(+)ボタンをクリックし、コンポーネントを作成ダイアログボックスに入力して、「OK」をクリックします。

a. 「コンポーネント」セクションに、コンポーネントの詳細を入力します。 主なオプションは、次のとおりです。

名前 コンポーネントのファイル名を指定します。 名前に使用できるのは、英数字とアンダースコア(_)だけです。 名前を入力するときに .cfc ファイル拡張子を付けないでください。

コンポーネントディレクトリ コンポーネントの保存場所を指定します。 Web アプリケーションのルートフォルダー(¥Inetpub¥wwwroot¥myapp¥ など)またはそのサブフォルダーを選択します。  

b.コンポーネントに 1 つ以上の関数を定義するには、セクションリストから「関数」を選択し、プラス(+)ボタンをクリックして、新しい関数の詳細を入力します。

「返されるタイプ」オプションには、関数が返す値のタイプを指定します。

メモ

アクセスメニューから「リモート」を選択した場合、関数は Web サービスとして利用できるようになります。

c.関数に 1 つ以上の引数を定義するには、セクションリストから 「引数」を選択し、ポップアップメニューから関数を選択して、 プラス(+)ボタンをクリックし、右側に新しい引数の詳細を 入力します。

リモート開発サーバーを使用している場合は、CFC ファイルと依存ファイル(関数の実装やインクルードファイルなどに使用されるファイル)をリモートサーバーにアップロードします。

ファイルをアップロードすることで、ライブビューや ブラウザーでプレビューなどの Dreamweaver 機能が 適切に動作するようになります。

Dreamweaver が CFC ファイルを書き込み、指定した フォルダーに保存します。新しいコンポーネントは、コンポーネントパネルにも 表示されます(「更新」をクリックした後)。

リモート開発サーバーを使用している場合は、CFC ファイルと依存ファイル(関数の実装やインクルードファイルなどに使用されるファイル)をリモートサーバーにアップロードします。

Dreamweaver での CFC の表示

Dreamweaver では、サイトフォルダーまたはサーバーにある ColdFusion コンポーネント(CFC)を視覚的な方法で確認することができます。 Dreamweaver が CFC ファイルを読み取り、コンポーネントパネルで操作しやすいツリービューでそれらの情報を表示します。

Dreamweaver はテストサーバー上のコンポーネントを検索します(Dreamweaver でのデータベースへの接続を参照)。CFC を新規作成する場合または既存の CFC を変更する場合は、CFC ファイルをテストサーバーにアップロードして、コンポーネントパネルに正確に反映されるようにします。

他のサーバーに置かれているコンポーネントを表示するには、テストサーバーの設定を変更してください。

CF コンポーネントについて表示できる情報は次のとおりです。

  • サイトに定義されているすべての ColdFusion コンポーネントのリストを表示します。

  • ColdFusion MX 7 以降を実行している場合は、リストをフィルターしてサイトフォルダーにある CFC だけを表示します。

  • 各コンポーネントの関数と引数を確認します。

  • Web サービスとして機能する関数のプロパティを確認します。

メモ

Web サイトのルートにあるサイトファイルを管理しながら、一方で Dreamweaver を使用して別のサーバーのルートにある CFC を調べるために、2 つの Dreamweaver サイトを定義できます。 1 番目のサイトがサーバーのルートを指すように設定し、2 番目のサイトが Web サイトのルートを指すように設定します。 ファイルパネルのサイトポップアップメニューを使用して、2 つのサイトを素早く切り替えます。

Dreamweaver で CFC を表示するには、以下の手順に従います。

Dreamweaver で 任意の ColdFusion ページを開きます。
コンポーネントパネル(ウィンドウ/コンポーネント)で、 ポップアップメニューから「CF コンポーネント」を選択します。
パネルの「更新」ボタンをクリックして、コンポーネントを 取得します。

サーバー上のコンポーネントパッケージが表示されます。 コンポーネント パッケージは、CFC ファイルを含むフォルダーです。

既存の コンポーネントパッケージが表示されない場合は、パネル ツールバーの「更新」ボタンをクリックします。

サイトフォルダー内にある CFC のみを表示するには、 コンポーネントパネルツールバーの「現在のサイトの CFC のみを 表示」ボタンをクリックします。
メモ

この機能は、ColdFusion MX 6 以降が動作するコンピューターを Dreamweaver のテストサーバーとして定義している場合にのみ使用できます。

メモ

現在のサイトが リモートサーバーの仮想フォルダーにリストされている場合、 フィルタリング機能は動作しません。

パッケージに保存されているコンポーネントを表示するには、 パッケージ名の横にあるプラス(+)ボタンをクリックします。
  • コンポーネントの関数をリストするには、コンポーネント名の 横にあるプラス(+)ボタンをクリックします。

  • 関数が受け取る引数と、引数の種類、および必須またはオプション かどうかを確認するには、ツリービューで関数のブランチを 開きます。

    引数を取らない関数には、プラス(+)ボタンが 横にありません。

  • 引数、関数、コンポーネント、またはパッケージの詳細を すばやく表示するには、ツリービューで項目を選択し、 パネルツールバーの「詳細を取得」ボタンをクリックします。

    項目を右クリック(Windows)または Control キーを押しながら クリック(Macintosh)して、ポップアップメニューから 「詳細を取得」を選択することもできます。

    項目の詳細が メッセージボックスに表示されます。

Dreamweaver での CFC の編集

Dreamweaverでは、サイト用に定義されたColdFusionコンポーネントのコードを 効率的に編集する方法が提供されています。例えば、Dreamweaverを離れることなく、 コンポーネント関数の追加、変更、削除を行うことができます。

この機能を 使用するには、開発環境を以下のように設定する必要があります:

  • ColdFusion をローカルで実行します。

  • Dreamweaverの高度なサイト定義ダイアログボックスで、テスト サーバーカテゴリで指定されたアクセスタイプがローカル/ネットワークである必要があります。

  • 高度なサイト定義ダイアログボックスで、ローカル ルートフォルダーのパスがテストサーバー フォルダーのパスと同じである必要があります(例:c:\Inetpub\wwwroot\cf_projects\myNewApp\)。 これらのパスは、サイト > サイトの編集を選択して確認および変更できます。

  • コンポーネントは、ハードディスク上のローカルサイトフォルダーまたは そのサブフォルダーのいずれかに保存されている必要があります。

Dreamweaverで任意の ColdFusionページを開き、 コンポーネントパネルでコンポーネントを表示します。コンポーネントを表示するには、 コンポーネントパネルを開き(ウィンドウ > コンポーネント)、 パネルのポップアップメニューからCFコンポーネントを選択し、パネルの更新 ボタンをクリックします。

ColdFusionがローカルで実行されているため、Dreamweaverはハードディスク上のコンポーネントパッケージを表示します。

次の手順でコンポーネントを編集します。

Dreamweaverで任意のColdFusionページを開き、 コンポーネントパネル(ウィンドウ > コンポーネント)でコンポーネントを表示します。
パネルのポップアップメニューからCFコンポーネントを選択し、 パネルの更新ボタンをクリックします。

ColdFusionがローカルで実行されているため、Dreamweaverはハードディスク上のコンポーネントパッケージを表示します。

メモ

CFCレコードセットを視覚的に編集するには、 バインディングパネルでダブルクリックします。

コンポーネントファイルを編集するには、パッケージを開いてツリービューでコンポーネント名をダブルクリックします。

コンポーネントのファイルがコードビューで開きます。

特定の関数、引数、またはプロパティを編集するには、 ツリービューで項目をダブルクリックします。
コードビュー内で変更を手作業で行います。
ファイルを保存します(ファイル/保存)。
コンポーネントパネルで新しい関数を表示するには、 パネルツールバーの更新ボタンをクリックしてビューを更新します。

CFC を使用する Web ページの作成

Web ページでコンポーネント関数を使用する方法の 1 つに、ページが要求されたときに関数を呼び出すコードをページに書き込む方法があります。 Dreamweaverを使用してこのコードを書くことができます。

メモ

コンポーネントの他の使用方法については、Dreamweaver内からColdFusionドキュメントを参照してください(ヘルプ > ColdFusionの使用)。

Dreamweaver で、コンポーネント関数を使用する ColdFusion ページを開きます。
コードビューに切り替えます(表示/コード)。
コンポーネントパネル(ウィンドウ > コンポーネント)を開き、 パネルのポップアップメニューからCFコンポーネントを選択します。
使用したいコンポーネントを見つけて、以下の テクニックのいずれかを使用して挿入します:
  • ツリービューからページに関数を ドラッグします。関数を呼び出すコードがページに挿入されます。

  • パネルで関数を選択し、パネルツールバーの挿入 ボタン(右から2番目のボタン)をクリックします。Dreamweaverは挿入ポイントでページにコードを挿入します。

引数を持つ関数を挿入する場合は、引数コードを手動で 完成させてください。

詳細については、Dreamweaver 内から ColdFusion ドキュメントを参照してください(ヘルプ > ColdFusion の使用)。

ページを保存します(ファイル > 保存)。

CFC のレコードセットの定義

Dreamweaver では、ColdFusion コンポーネント(CFC)にレコードセット(ColdFusion クエリー)を定義できます。 CFC にレコードセットを定義しておくことで、レコードセットを使用するページごとにレコードセットを定義する必要がなくなります。 CFC にレコードセットを一度定義し、異なるページでその CFC を使用します。

メモ

この機能は、ColdFusion MX 7 以降を実行するコンピューターにアクセスできる場合にだけ使用できます。 詳しくは、ColdFusion 拡張機能の有効化を参照してください。

 

Dreamweaver で CFC ファイルを作成するか、既存の CFC ファイルを開きます。
バインディングパネル(ウィンドウ/バインディング)で、プラス(+)ボタンをクリックし、ポップアップメニューからレコードセット(クエリ)を選択します。

レコードセットダイアログボックスが表示されます。 シンプルまたは詳細のレコードセット ダイアログボックスのいずれかで作業できます。

CFC 内の既存の関数を使用するには、関数 ポップアップメニューから関数を選択し、手順 5 に進みます。

レコードセットは関数内で定義します。

CFC 内に新しい関数を定義するには、新しい関数 ボタンをクリックし、表示されるダイアログボックスで関数の名前を入力し、 「OK」をクリックします。

名前には英数字と アンダースコア(_)のみを含める必要があります。

関数のレコードセットを定義するには、レコードセットダイアログボックスのオプションを設定します。

新しい関数は、レコードセットを定義するCFCに挿入されます。

動的コンテンツのソースとしてCFCレコードセットを使用する

ColdFusion コンポーネント(CFC)にレコードセットを定義する関数がある場合は、コンポーネントをページの動的コンテンツのソースとして使用できます。

メモ

この機能は、ColdFusion MX 7 以降を実行するコンピューターにアクセスできる場合にだけ使用できます。 詳しくは、「ColdFusion 拡張機能の有効化」を参照してください。

Dreamweaver で ColdFusion ページを開きます。
バインディングパネル(ウィンドウ > バインディング)で、プラス(+)ボタンをクリックし、ポップアップメニューからレコードセット(クエリ)を選択します。

レコードセットダイアログボックスが表示されます。 シンプルまたは詳細のレコードセット ダイアログボックスのいずれかで作業できます。

「CFC クエリー」ボタンをクリックします。
CFC クエリダイアログボックスに入力し、「OK」をクリックしてから、 再度「OK」をクリックして、CFC レコードセットを連結パネルの利用可能な 内容ソースリストに追加します。
バインディングパネルを使用して、レコードセットを様々なページ要素にバインドします。

詳細については、ページへの 動的コンテンツの追加を参照してください。

CFC を使用して 動的コンテンツを定義する

レコードセット定義を含む CFC を使用して、Dreamweaver で動的コンテンツのソースとしてレコードセットを定義できます。

1.名前ボックスに、CFC レコードセットの名前を入力します。

一般的な慣例として、レコードセット名にプレフィックス rs を追加してコード内の他のオブジェクト名と区別します。例:rsPressRelease。

レコードセット名に使用できるのは、英数字とアンダースコア(_)だけです。 特殊文字またはスペースは使用できません。

2.サーバーで既に定義されているパッケージから パッケージを選択します。

パッケージがポップアップメニューに表示されない場合は、ポップアップメニューの近くにある「更新」ボタンをクリックしてパッケージリストを更新します。

最初に CFC をテストサーバーにアップロードしていることを確認します。 テストサーバーの CFC だけが表示されます。

3.現在選択されているパッケージで定義されている コンポーネントからコンポーネントを選択します。

コンポーネントポップアップメニューにコンポーネントが 1 つも表示されない場合、または以前に作成したコンポーネントがメニューに表示されない場合は、CFC ファイルをテストサーバーにアップロードする必要があります。

4.(オプション)コンポーネントを作成するには、[新しいコンポーネントを作成]ボタンをクリックします。

a. 「名前」ボックスに、新規 CFC の名前を入力します。 名前に使用できるのは、英数字とアンダースコア(_)だけです。

b.「コンポーネントディレクトリ」ボックスに、CFC の場所を入力するか、フォルダーを参照して見つけます。

メモ

フォルダーは、サイトのルートフォルダーの相対パスである必要があります。

5。機能ポップアップメニューから、レコードセット定義を含む機能を選択します。

関数ポップアップメニューには、現在選択しているコンポーネントで定義される関数だけが表示されます。 ポップアップメニューに関数が 1 つも表示されない場合、または現在表示されている関数リストに最後に行った変更が反映されていない場合は、最後に行った変更が保存されておりサーバーにアップロードされていることを確認します。

メモ

「接続」ボックスと「SQL」ボックスは読み取り専用です。

6. 編集ボタンをクリックして、関数の引数として渡す必要がある各パラメーター(タイプ、値、デフォルト値)を編集します。

a. 現在のパラメーターの値を入力するには、値ポップアップメニューから値タイプを選択し、右側のボックスに値を入力します。 値タイプは URL パラメーター、フォーム変数、Cookie、セッション変数、アプリケーション変数、または入力値のいずれかです。

b. 「初期設定値」ボックスにパラメーターの初期設定値を入力します。 ランタイム値が返されない場合は、パラメーターの初期設定値が使用されます。

c。OKをクリックします。 

レコードセットのデータベース接続と SQL クエリーは修正できません。 これらのフィールドは、常に無効になっています。接続と SQL は参照用に表示されています。

7. テストをクリックして、データベースに接続し、レコードセットのインスタンスを作成します。

SQL ステートメントにページパラメーターが含まれる場合は、「テスト」をクリックする前に、「パラメーター」ボックスの「初期設定値」列に有効なテスト値が入力されていることを確認してください。

クエリーの実行に成功した場合は、テーブルにレコードセットが表示されます。 各行にはレコードが含まれており、各列はレコードのフィールドを表しています。

「OK」をクリックして CFC クエリーをクリアします。

8. OKをクリックします。