J2EE アプリケーションサーバー上の ColdFusion MX 7 のデプロイ
ColdFusion MX 7 の長所のひとつは、統合化されたサーバーとしてインストール (サーバー設定) できる、または、Java アプリケーションとして標準の J2EE (Java 2 Enterprise Edition) アプリケーションサーバーにデプロイ (マルチサーバー設定および J2EE 設定) できることです。この柔軟性のほかに、たとえば、複数のアプリケーションインスタンスのサポートや、複数のインスタンスのクラスタ化など、J2EE アーキテクチャの ColdFusion アプリケーションの特徴を利用することができます。
このガイドには、ColdFusion MX J2EE 設定の説明と、さまざまな J2EE アプリケーションサーバー用のデプロイ方法へのリンクが記載されています。
メモ: ColdFusion MX 6.1 を使用している場合は、「バージョン 6.1 の操作」を参照してください。
はじめに
サードパーティの J2EE アプリケーションサーバーを使用して、ColdFusion MX 7 を J2EE 設定でデプロイできます。J2EE 設定を選択すると、インストールウィザードにより、WAR (Web アプリケーションアーカイブ) ファイルまたは EAR (エンタープライズアプリケーションアーカイブ) ファイルが作成されます。このファイルを、任意のアプリケーションサーバーに付随するツールを使用してデプロイします。
このガイドでは、ColdFusion MX J2EE 設定の概念とコンポーネントをよりよく理解していただくために、基本情報を説明します。また、さまざまな J2EE アプリケーションサーバー上で ColdFusion MX 7 をインストールし、デプロイするために参照できる詳細情報へのリンクも記載します。この情報には、機能の制限やサポート状況も含まれます。J2EE アプリケーションサーバーおよびプラットフォームによっては、本番用にサポートされていないものもあります。
ColdFusion MX J2EE 設定については、ColdFusion MX サポートセンターの情報を参照してください。ColdFusion MX の追加情報については、製品情報、FAQ、および Macromedia 開発センターをご覧ください。
J2EE アプリケーションサーバーとサポート状況
J2EE 準拠のすべてのアプリケーションサーバーが EAR デプロイと WAR デプロイのどちらかまたは両方をサポートするため、すべての J2EE 認可アプリケーションサーバー上で J2EE 設定の ColdFusion MX のデプロイができるはずです。しかし、構成とプラットフォームの微妙な違いにより、必ずしもすべての J2EE アプリケーションサーバーが公的にサポートされるわけではありません。
サポートされる J2EE アプリケーションサーバー
次のリストは、ColdFusion MX J2EE 設定でサポートされるアプリケーションサーバーの一覧です。
- Macromedia JRun 4
- IBM WebSphere Application Server バージョン 5
- IBM WebSphere Application Server バージョン 4
- BEA WebLogic Server バージョン 7 と 8.1
- Fujitsu Interstage V5
サポートされる各アプリケーションサーバーに必要なシステム条件については、「ColdFusion MX に必要なシステム条件」ページを参照してください。
アーカイブインストールでサポートされないアプリケーションサーバー
ColdFusion MX J2EE 設定をあらゆる J2EE 準拠のアプリケーションサーバーにデプロイできますが、上述したように、必ずしもすべての製品の使用がサポートされるとはかぎりません。そのため、以下の情報は開発または評価環境での使用のみを目的とします。
- Mac OS X 上での JRun 4 と Tomcat (バージョン 4.1.12 かそれ以上)
- Tomcat (バージョン 4.1.12 かそれ以上)
- その他の J2EE サーバー用の一般的な注意
EAR デプロイと WAR デプロイの選択
コンピュータがすでに J2EE アプリケーションサーバーを実行している場合は、インストールウィザードにより、EAR または WAR ファイルが作成されます。アプリケーションサーバー特有のツールを使用して、このファイルをデプロイします。
展開したディレクトリ構造から ColdFusion MX J2EE 設定を実行する必要があります。J2EE アプリケーションサーバーには、次のように、デプロイと展開されたディレクトリ構造に対して異なる必要条件があります。
圧縮されたアーカイブを作業ディレクトリへデプロイ ― J2EE アプリケーションサーバーによっては (IBM WebSphere など)、デプロイ操作で EAR または WAR ファイルが作業ディレクトリに展開され、それ以降、その展開されたディレクトリがアプリケーションであるとみなされる場合があります。これらのアプリケーションサーバーでは、結果のディレクトリ構造内で、圧縮した EAR または WAR ファイルをデプロイし、作業します。
展開したアーカイブを作業ディレクトリとしてデプロイ ― その他のアプリケーションサーバーでは (JRun 4 や BEA WebLogic など)、デプロイ操作により、EAR または WAR ファイルが一時ディレクトリに展開され、圧縮された EAR または WAR ファイルがまだアプリケーションであるとみなされます (概念的に)。これらのアプリケーションサーバーの場合は、まず EAR/WAR ファイルを手動で展開し、それから、展開されたディレクトリ構造をデプロイする必要があります。これが作業ディレクトリになります。
圧縮したアーカイブをデプロイするのか、展開されたアーカイブをデプロイするのかをサーバー別に説明しますので、適するガイドを参照してください。
コンテキストルート
J2EE 環境がサーバーインスタンス内で実行される複数の独立した Web アプリケーションをサポートするため、サーバー内で実行される各 J2EE Web アプリケーションは固有の基本 URL (コンテキストルートとかコンテキストパスと呼ばれる) を持つ必要があります。J2EE アプリケーションサーバーでは、URL の初めの部分 (http://hostname の直後の部分) を使用して、どの Web アプリケーションが受信リクエストにサービスするかが判断されます。たとえば、cfmx のコンテキストルートで ColdFusion MX を実行している場合は、URL http://hostname/cfmx/CFIDE/administrator/index.cfm を使用して、ColdFusion MX Administrator を表示します。
大部分の J2EE アプリケーションサーバーでは、サーバーインスタンスごとに 1 つのアプリケーションのみがコンテキストルート用に / (スラッシュ) を使用できます。/ のコンテキストルートを使用する場合は、RDS (Remote Development Services) Web アプリケーションを必要としません。
ColdFusion MX EAR ファイルをデプロイする場合は、インストールウィザードの実行時に指定したコンテキストルートが使用されます。インストールウィザードはその指定を META-INF/application.xml ファイルの context-root 要素にコピーします。ColdFusion MX を WAR ファイルとしてデプロイする際に、アプリケーションサーバー特有の機能を使用して、コンテキストルートを定義してください。
サポートされるプラットフォームと機能の違い
ColdFusion MX アーカイブファイルをデプロイする際に、基本 ColdFusion ページを実行し、ColdFusion MX Administrator を起動できます。しかし、ColdFusion MX 機能のタイプによっては、Windows、Solaris、Linux により提供されるプラットフォーム特有のバイナリファイル (つまり、Java バイトコードではなく、コンパイルされた C++ ファイル) を介して実行されるものがあります。さらに、これらの機能によっては、サーバー特有の環境設定を必要とするものもあります。次の表は、プラットフォーム特有の機能と、それを使用するために実行しなければならない手順の一覧です。
| 機能 | 変更手順 |
|---|---|
| COM (Windows のみ) | jIntegra バイナリディレクトリを JVM のネイティブライブラリパスへ追加します。これらのディレクトリは以下のとおりです。
|
| C++ CFX cfreport タグ (Crystal Reports のみ、Windows のみ) | cf_root/WEB-INF/cfusion/lib を JVM のクラスパスに追加します。 |
J2EE サーバーが Windows、Solaris、Linux 以外のオペレーティングシステム上で実行されている場合は、プラットフォーム特有のバイナリファイルを含まない EAR または WAR ファイルを生成するために、全てが Java であるインストーラの coldfusion-70-other.jar を使用してください。なお、ColdFusion MX は実行できますが、上記の表にリストされている機能は使用できません。
プラットフォーム特有の変更手順のほか、さらに以下の変更手順を実行しなければならない場合があります。
| 機能 | 変更手順 |
|---|---|
| チャート (1.3.x JVM のみ) | 1.3.x JVM を使用するサーバー上でチャートを有効にする手順については、cf_webapp_root/WEB-INF/cfusion/charting/java1.3/readme.txt を参照してください。 |
| チャート (UNIX のみ) | 次の JVM 引数を追加します。 -Djava.awt.headless=true
|
| セキュリティ | ColdFusion MX Administrator のサンドボックスセキュリティを有効にした後、次の JVM 引数 (1 行) も定義する必要があります。 -Djava.security.manager-Djava.security.policy="cf_webapp_root/WEB-INF/cfusion/lib/coldfusion.policy"-Djava.security.auth.policy="cf_webapp_root/WEB-INF/cfusion/lib/neo_jaas.policy" サンドボックスセキュリティを有効にするために、アプリケーションサーバーがセキュリティマネージャ (つまり、java.lang.SecurityManager の実装) を実行している必要があります。 さらに、アプリケーションサーバーによっては、ColdFusion セキュリティマネージャを有効にするために、サーバー特有の policy-file アクセス権限を無効にしなければならない場合もあります。 |
