ColdFusion-開発効率を求められる今だから知りたい高性能Webアプリケーションサーバー

第7回 ColdFusionでラインデバッギング

この記事を読むのに必要な時間:およそ 4 分

第6回目の記事ではAdobe製品群の一員となったことで強化されたPDFに関連する機能を学びました。ColdFusion 8で新たに追加されたcfpdfタグでは,PDFの各種情報の取得・2つ以上のPDFファイルのマージ・PDFファイルのパスワードでの保護及び暗号化・PDFの各ページのサムネイルの作成などをタグ1つで行うことが出来ることが分かりました。第4回で紹介したグラフ描画と同様に,他の言語では煩雑な操作を伴う処理が1つのタグにカプセル化されていること,及び外部ライブラリなどを導入しなくてもそれらの処理を行うことが出来ること,また買ったその日からその機能を使うことが出来ることはColdFusionが持つ大きなメリットでしょう。

今回はColdFusionでのデバッグ手法を学びます。

ラインデバッギングとは

ラインデバッギングとは,他のJavaやC言語などではおなじみの,行単位でブレークポイントを設定し,その時点での各種変数の値を確認できる,と言うものです。

ColdFusion MX 7まではFusionDebugなどのサードパーティのデバッグツールを使う必要がありましたが,ColdFusion 8からはEclipse向けにColdFusionのデバッグプラグインが提供されるようになりました(EclipseベースのAdobe Flex Builderでも使用可能なようです)。

FusionDebugを使わずにデバッグをしようと思った場合,デバッグ用にcfoutputタグcfdumpタグを用いてブラウザ上で変数の値を確認していたところを,コードに一切手を加えることなくIDE上で直接変数の値を確認できるので,デバッグの手間を大幅に省くことが出来るでしょう。

また,知りうる限り,ライトウェイトなWeb開発言語で,このようなIDEベースのGUIデバッガがビルドインで提供されているのはColdFusionのみのようです(PHPはZend DebuggerやPDTの追加インストールが必要で,Ruby on Railsはソースコードのブレークポイントを設定したい箇所に「breakpoint」と書き込み,irbベースのCUIでのデバッグとなるようです)。

ColdFusionデバッグ用プラグインをインストールする

ColdFusionデバッグ用プラグインはEclipse 3.2以上が必要になります(本稿はEclipse SDK 3.2.2を使用しています)。なお,現時点ではプラグインがEclipse 3.3以上には対応していないので注意が必要です。Eclipseのインストールおよび基本的な使用方法は本稿の範疇を超えるので省略します(基本的にEclipseのダウンロードページからEclipseをダウンロードし,解凍するだけで使用できるようになります)。

まず,ColdFusion 8 Extensions for Eclipse(ColdFusionデバッグ用プラグイン)をダウンロードします。

次に,Eclipseを起動します。

そして,通常のEclipseの拡張機能をインストールする手順を取ります。具体的には,メニューから[Help]-[Software Updates]-[Find and Install...]を選びます。ダイアログが表示されるので,「Search for New Features to Install」を選び,「Next」を押します。次に,「New Archived Site...」ボタンを押します。ファイル選択ダイアログが表示されるので,先ほどダウンロードしたCF8-Extensions-for-Eclipse.zipを選択し,「開く」を押します。名前の入力を求められるので「cf8_extensions_for_eclipse」と入力しておきます。「cf8_extensions_for_eclipse」にチェックが入っていることを確認し,「Ignore features not applicable to this environment」のチェックを外し「Finish」ボタンを押します。再度ダイアログが表示されるので「cf8_extensions_for_eclipse」にチェックを入れ「Next」を押します。ライセンス条項が表示されるので,一読し同意の上(同意するには「I accept the terms in the license agreement」を選択します),「Next」を押します。次に「Finish」を押し,インストールを開始します。途中「Feature Verification」の画面が出ます。これは拡張機能がAdobeによってデジタル署名されているかどうかを確認するステップです。「O=Adobe Systems Incorporated」の文字が見えたら問題ないので,「Install All」を押します。最後にEclipseを再起動するように促されるので,「Yes」ボタンを押しEclipseを再起動します。

CFEclipseをインストールする

CFEclipseはEclipse上でColdFusionの開発をするための拡張機能で,有志の手によって開発されています。cfmファイルをEclipse上で編集するためにはこの拡張機能が必要になりますので,インストールします。

CFEclipseも通常のEclipseの拡張機能をインストールする手順を取ります。具体的には,メニューから[Help]-[Software Updates]-[Find and Install...]を選びます。ダイアログが表示されるので,「Search for New Features to Install」を選び,「Next」を押します。次に,「New Remote Site...」ボタンを押します。ダイアログが表示されるので,Name欄に「CFEclipse」と,URL欄に「http://www.cfeclipse.org/update」を入力し,OKボタンを押します。その後,「Finish」ボタンを押すとダイアログが表示されます。「CFEclipse」にチェックを入れ,「Next」ボタンを押します。ライセンス条項が表示されるので,一読し同意の上,「Next」を押します。次に「Finish」を押し,インストールを開始します。「Feature Verification」のダイアログが表示され,インストールしても良いかどうかを確認してくるので,「Install All」ボタンを押します。最後にEclipseを再起動するように促されるので,「Yes」ボタンを押しEclipseを再起動します。

ColdFusionのラインデバッガーを有効にする

ColdFusionでは,デフォルトではラインデバッガーが無効になっています。デバッグでは内部的に使っている変数など,本来外部に公開しないものまで見ることが出来てしまうため,セキュリティー上のリスクがあるからです。従って,ラインデバッガーは開発環境でのみ有効にするようにし,本番環境では有効にしないようにしましょう。

ColdFusionのラインデバッガーを有効にするには,ColdFusion Administratorを開きます(お使いの環境にもよりますがhttp://127.0.0.1:8500/CFIDE/administrator/が標準です)。次に,左のペインから「デバッグとロギング」という項目を開きます。メニューが展開されるので,「デバッガの設定」という項目を選びます。

すると,デバッガーの設定画面が右ペインに表示されます。「ラインデバッグの許可」にチェックを入れ「変更の送信」ボタンを押します(「デバッガポート」「同時デバッグセッションの最大数」に関しては,それぞれ「5005」「5」のまま触らないようにしてください)。その後,ColdFusionを再起動するように促されるので,ColdFusionを再起動します図1)。

図1 デバッガの設定画面

図1 デバッガの設定画面

本連載2回目で紹介したインストール方法を取った場合,ColdFusionのRDS(Remote Development Service)が有効になっているかと思いますが,念のため有効になっているか確認します。なお,RDSもラインデバッガー同様にセキュリティー上のリスクがあるため,本番環境では無効にしておき,開発環境でのみ有効にするようにしましょう。

左ペインの「セキュリティ」の項目を開き,「RDS」を選択します。「単一のパスワードのみを使用する(デフォルト)」が選択されていることを確認します。なお,インストール時に設定したRDSパスワードを忘れてしまった場合は,「単一のRDSパスワード」の2カ所にパスワードを入力し,「変更の送信」ボタンを押すことで,そのパスワードでRDSにアクセスできるようになります。

著者プロフィール

酒井克幸(さかいかつゆき)

フリーのテクノロジーコンサルタント。サーバー選定やネットワーク設計などハードウェアレイヤーから,Webアプリケーションの実装(サーバーサイド,クライアントサイド共)などのソフトウェアレイヤーまでの幅広い経験を活かし,クライアント企業のWebアプリケーション構築支援を行っている。殊にAdobe製品(特にMacromedia)製品には精通している。

ブログcyano(シアノ)

コメント

コメントの記入