Tomcat 上の ColdFusion MX 7 のインストールとデプロイ
Macromedia ColdFusion MX 7 では、次の設定がサポートされます。
- サーバー設定 ― 組み込みの J2EE (Java 2 Enterprise Edition) サーバーを持つ ColdFusion MX 7 のインスタンスを 1 つインストールできます。この設定は、ColdFusion MX 基本リリースと、ColdFusion MX より前の ColdFusion 5 や ColdFusion 4.5 などのリリースに最もよく似ています。サーバー設定は、以前にはスタンドアローン設定と呼ばれていました。この設定のインストールについては、『ColdFusion MX のインストールと使用』を参照してください。
- マルチサーバー設定 (エンタープライズ版とデベロッパー版のみ) ― JRun をインストールし、JRun サーバーインスタンスとは別に自動的に ColdFusion MX 7 をデプロイします。この設定のインストールについては、『ColdFusion MX のインストールと使用』を参照してください。
- J2EE 設定 (エンタープライズ版とデベロッパー版のみ) ― JRun 4、IBM WebSphere、BEA WebLogic などの J2EE (Java 2 Enterprise Edition) アプリケーションサーバー上で実行する Java アプリケーションとして ColdFusion MX 7 をデプロイできます。ここでは、JRun 4 上で ColdFusion MX 7 をデプロイする方法を説明します。
J2EE 設定で ColdFusion MX 7 を実行する場合は、アプリケーションサーバーのデプロイ機構を使用して、J2EE 1.3 準拠のアプリケーションサーバー上で ColdFusion MX をデプロイします。インストールウィザードにより、ColdFusion MX をエンタープライズアプリケーションまたは Web アプリケーションとしてインストールできます。Web アプリケーションサポートにより、ColdFusion MX J2EE 設定をスタンドアローンの J2EE Web コンテナ (Tomcat など) にデプロイできます。
このガイドについて
このガイドでは、Tomcat バージョン 4.1.12 かそれ以降で J2EE 設定の ColdFusion MX をデプロイし、設定する手順を説明します。そして、『ColdFusion MX のインストールと使用』にある概要を参照します。このマニュアルは LiveDocs (英語と日本語のみ) でアクセスできます。
このガイドでの表記
このガイドでは、Tomcat および ColdFusion のディレクトリを示すために次の表記を使用します。
- cfmx_install_directory ― ColdFusion MX インストールウィザードが解凍したファイルの置かれているディレクトリ (たとえば、C:\cfmx または /opt/cfmx)。
- tomcat_root ― Tomcat が置かれているディレクトリ (たとえば、C:\Program Files\Apache Group\Tomcat 4.1)。
- cf_webapp_root ― ColdFusion MX Web アプリケーションをデプロイしたディレクトリ (たとえば、C:\Program Files\Apache Group\Tomcat 4.1\webapps\cfusion)。
- java_home ― J2SDK (Java 2 Software Development Kit) のルートディレクトリ (たとえば、C:\j2sdk1.4.1)。
ColdFusion MX 7 のインストール、デプロイ、設定
Tomcat オートデプロイと WAR ファイルを併用して、Tomcat 上に J2EE 設定の ColdFusion MX をデプロイします。
メモ: 現在 Tomcat 上にデプロイされている ColdFusion MX のバージョンをアップデートする場合は、まず、『J2EE サーバー上の ColdFusion MX 7 機能の有効化と使用』をお読みください。
Tomcat 上で ColdFusion MX 7 をインストールするには
- 次に示すプラットフォーム特有のインストーラのダウンロード後、ColdFusion MX 7 インストールウィザードを実行します。
- Windows ― coldfusion-70-win.exe
- Linux ― coldfusion-70-lin.bin
- Solaris ― coldfusion-70-sol.bin
- その他のプラットフォーム ― coldfusion-70-other.jar (java_home/bin/java -jar coldfusion-70-other.jar -i console で実行)
これらのインストーラは、Macromedia Web サイトで入手できます。Tomcat 特有のインストーラはありません。ご使用のプラットフォームに適するバージョンをどれでもダウンロードしてください。
質問に答えます。メッセージに対して、次のように対応します。
- デベロッパー版を選択します。
- J2EE 設定 (WAR ファイル) を選択します。
- ODBC サービス (Windows のみ)、検索サービス、素材のサポートなどをインストールするかどうかを指定します。
- ColdFusion MX と検索サービスのインストールディレクトリを指定します。
- Java Servlet API 2.3 かそれ以降のオプションを選択します。
- ColdFusion MX Administrator で使用するパスワードを指定します。
- (RDS が有効な場合のみ) RDS (Remote Development Services) で使用するパスワードを指定します。
インストールウィザードにより、cfusion.war および rds.war ファイルがインストールディレクトリに置かれます。
- これから ColdFusion MX をデプロイする Tomcat サーバーを停止します。
- cfusion.war および rds.war をインストールディレクトリから webapps ディレクトリにコピーします。
- rds.war ファイルの名前を CFIDE.war に変更します (必ず CFIDE を大文字にしてください)。
Tomcat サーバーを起動します。
Tomcat は自動的に cfusion.war と CFIDE.war ファイルの存在を察知し、それらをオートデプロイし、展開された cfusion と CFIDE のサブディレクトリを作成します。多少時間がかかることがあります。
メモ: この説明では、cfusion.war の名前を変更しないことを前提にしています。これは、Tomcat が ColdFusion MX を cfusion のコンテキストルートでデプロイすることを意味します。
- Tomcat サーバーを停止します。
- (1.3.x JVM を使用する場合) 『J2EE サーバー上の ColdFusion MX 7 機能の有効化と使用』の「1.3.x JVM用 JCE の有効化」の説明に従い、JCE (Java Cryptography Extension) をダウンロードしてインストールします。
- ColdFusion MX 7 には tools.jar ファイルの 1.4.2 バージョンが付随します。異なる JDK バージョンを Tomcat が使用する場合は、tomcat_root/webapps/cfusion/WEB-INF/cfusion/lib/tools.jar ファイルを他の名前に変更します (たとえば、tools.old)。
サンドボックスセキュリティを使用する予定の場合は、次の手順に従います。
- Tomcat の起動時に -security オプションを渡して、Java セキュリティマネージャを有効にします。
- tomcat_root/conf/catalina.policy ファイルの名前を変更します。
- tomcat_root/conf 内に新しいファイルを作成し、catalina.policy と名付けます。
この新しい catalina.policy ファイルに次の行を追加します。
grant { permission java.security.AllPermission; }- ファイルを保存します。
(Windows、Linux、および Solaris) バッチファイル (Windows) またはシェルスクリプト (Linux と Solaris) を作成し、Tomcat の起動時に使用される環境変数と JVM オプションを設定します。このファイルを setenv.bat (Windows) または setenv.sh (Linux と Solaris) と名付け、それを tomcat_root/bin ディレクトリ内に保存します。Tomcat の起動時に、catalina.bat ファイル (Windows) または catalina.sh ファイル (Linux とSolaris) は自動的に setenv ファイルを呼び出します。このファイルで以下の操作を行う必要があります。
次の ColdFusion バイナリファイルディレクトリをシステムパスに追加します。
ColdFusion MX バイナリ ― cf_webapp_root/WEB_INF/cfusion/lib
jIntegra バイナリ (Windows のみ、COM サポート) ― cf_webapp_root/WEB-INF/cfusion/jintegra/bin および cf_webapp_root/WEB-INF/cfusion/jintegra/bin/international
- チャート (1.3.x JVM のみ) ― 1.3.x JVM を使用するサーバー上でチャートを有効にする手順については、cf_webapp_root/WEB-INF/cfusion/charting/java1.3/readme.txt を参照してください。
- JVM オプションを設定して、COM (Windows のみ)、グラフ作成 (Linux と Solaris に必要)、および、CORBA サポートを有効にします。
次のサンプル Windows バッチファイルはシステムパスを設定し、JVM オプションを JAVA_OPTS 環境変数 (スタートアップコマンド内で使用される) に追加します。
rem Set a few variables. set JAVA_HOME=j2sdk1.4.2_05 set CF_WEB_INF="C:\Program Files\Apache Group\Tomcat 4.1\webapps\cfusion\WEB-INF" rem Concatenate binary file directories into a single variable. set CF_SHARED_LIB=%CF_WEB_INF%/cfusion/lib rem The following variable must be on a single line. set CF_SHARED_LIBS=%CF_SHARED_LIB%;%CF_WEB_INF%/cfusion/jintegra/bin;%CF_WEB_INF%/WEB-INF/cfusion/jintegra/bin/international rem Add libraries for binary files to the Windows system path. set PATH=%PATH%;%CF_SHARED_LIBS% rem Set JVM options for CORBA. Uncomment this line if vbjorb.jar is not in rem your JRE's lib/ext directory. rem set CF_CORBA_JVM_OPTIONS=-Xbootclasspath/a:"%CF_WEB_INF%/lib/vbjorb.jar set CF_COM_JVM_OPTIONS="-DJINTEGRA_NATIVE_MODE -DJINTEGRA_PREFETCH_ENUMS" rem Populate JAVA_OPTS, which will be used by the catalina.bat file rem when starting the JVM. rem set JAVA_OPTS=%CF_CORBA_JVM_OPTIONS% set JAVA_OPTS=%CF_COM_JVM_OPTIONS%
次のサンプル UNIX シェルスクリプトはシステムパスを設定し、JVM オプションを JAVA_OPTS 環境変数 (スタートアップコマンド内で使用される) に追加します。
# Establish variables. JAVA_HOME="/usr/java/j2sdk1.4.2_01" CF_WEB_INF="/opt/tomcat/webapps/cfusion/WEB-INF" # Add binary file directories to the system path. CF_SHARED_LIB=$CF_WEB_INF/cfusion/lib LD_LIBRARY_PATH="$CF_SHARED_LIB:$LD_LIBRARY_PATH" # Establish graphics JVM options. CF_GRAPHICS_JVM_OPTIONS="-Djava.awt.headless=true" # Set JVM options for CORBA. Use if vbjorb.jar is not in your JRE's # lib/ext directory. If used, append $CF_CORBA_JVM_OPTIONS to CF_JVM_OPTIONS. # CF_CORBA_JVM_OPTIONS=-Xbootclasspath/a:"$CF_WEB_INF/lib/vbjorb.jar" CF_JVM_OPTIONS="$CF_GRAPHICS_JVM_OPTIONS" JAVA_OPTS="$CF_JVM_OPTIONS -Xms128m -Xmx256m" export LD_LIBRARY_PATH
- Tomcat サーバーを起動し、スタートアップメッセージとログファイルに注意して、すべての設定が適切に適用されていることを確認します。
ColdFusion MX Administrator を起動し、設定ウィザードを実行します。次のように、フォームの http://hostname:portnumber/cfusion/CFIDE/administrator/index.cfm の URL を使用して、Administrator を起動します。
- hostname ― コンピュータ名、IP アドレス、localhost または 127.0.0.1。
- portnumber ― Tomcat Web サーバーのポート番号 (通常は 8080)。
- ColdFusion (CFM) ページのコードを調べ、テストします。これらのページを cfusion Web アプリケーションルートディレクトリに格納します。たとえば、/Jakarta-4.1.18/webapps/cfusion/eisapp/index.cfm にある CFM ファイルを表示する場合は、URL を http://127.0.0.1:8080/cfusion/eisapp/index.cfm のように指定できます。
- (オプション、Windows のみ) 『J2EE サーバー上の ColdFusion MX 7 機能の有効化と使用』の「オプションのコンポーネントのインストール」の説明に従い、Report Builder と Dreamweaver 拡張機能をインストールします。
使用上の注意
日本語
Tomcat を -Duser.language=ja -Duser.region=JP -Duser.country=JP で起動すると、getLocale 関数は日本語の代わりに英語 (US) を返します。
crossContext 属性を設定して RDS を有効化
また、RDS アプリケーションをデプロイした場合は、CFIDE Web アプリケーション用に、crossContext 属性を true に設定する必要もあります。この場合は Tomcat Administrator を使用します。また、server.xml ファイルを直接修正して、crossContext 属性を設定できます (詳細はこのガイドでは説明しません)。
Tomcat Administrator で crossContext属性を設定するには
- Tomcat を再起動します。
- Tomcat Administrator を開きます (http://servername:8080/admin)。これまで Administrator を使用したことがない場合は、tomcat_root/conf/tomcat-users.xml ファイルをテキストエディタで開き、admin ロールでユーザーを定義します。
- [Tomcat Server] > [Service (Tomcat-Standalone)] > [Host (localhost)] を選択します。
- [Context (/CFIDE)] オプションをクリックします。
- [Cross Context] フィールドを true に設定します。
- [Save (保存)] をクリックします。
- [Commit Changes] をクリックします。
サーバー設定で作成されたアーカイブのデプロイ
ここでは、ColdFusion MX 7 インストールウィザードにより作成された WAR ファイルをデプロイする方法を説明します。また、ColdFusion MX Administrator の「J2EE アーカイブ」ページを使用して作成された WAR ファイルもデプロイできます。しかし、サーバー設定の ColdFusion MX の実行中に「J2EE アーカイブ」ページで WAR ファイルを作成する場合は、web.xml ファイルを修正して、デプロイを完成させる必要があります。これは、マルチサーバー設定または J2EE 設定を使用して作成された WAR ファイルには適用されません。
サーバー設定で ColdFusion MX Administrator を実行中に WAR ファイルを作成した場合は、次の手順に従い、アプリケーションをデプロイします。
- ColdFusion MX Administrator の「J2EE アーカイブ」ページを使用して、WAR ファイルを作成します。
- WAR ファイルを Tomcat にデプロイします。デプロイが失敗します。
- Tomcat を停止します。
- cf_webapp_root/WEB-INF/web.xml ファイルをテキストエディタで開きます。
- macromedia_mapping_6 用のサーブレットマッピング要素を見つけます。
- macromedia_mapping_6、macromedia_mapping_7、macromedia_mapping_8 用のサーブレットマッピング要素をコメント化します。
これらのマッピングは、Tomcat がサポートしない検索エンジン安全 URL 形式を使用します。
- web.xml ファイルを保存します。
- Tomcat を起動します。
