第15章

アーカイブの展開

ユーザがJ2EEアプリケーションを使用できるよう、J2EEサーバにアーカイブを展開します。この章では、Novell exteNd Director 開発環境を使用してJ2EEアーカイブを展開する方法について説明します。この章は、次のトピックで構成されています。

 
Top of page

サポートされるJ2EEサーバ

exteNd Director 開発環境では、次のJ2EEサーバにアーカイブを展開するための組み込みサポートが提供されています。

サーバ

サーバのアーカイブのサポート

Novell exteNdApplication Server

SilverStream eXtend Application Server

アプリケーションクライアント、EAR、EJB JAR、RAR、およびWARを直接展開できます。

BEA WebLogic

アプリケーションクライアント、EAR、EJB JAR、RAR、およびWARを直接展開できます。

Apache Tomcat

WARを直接展開できます。

For more information    サポートされているサーババージョンの最新情報については、Novell exteNdのリリースノートを参照してください。

注記:   IBM WebSphereでは、直接展開のための組み込みサポートが提供されていません。WebSphereの開発ツールを使用する必要があります。

 
Top of page

展開タイプ

exteNd Director 開発環境で生成したアーカイブを展開するには、次の方法を使用できます。

 
Top of section

高速展開

アプリケーションの開発、テスト、および修正の段階では、結果をすばやく確認できる必要があります。つまり、アプリケーションを変更して、アプリケーションを再展開することなくただちに結果を確認したい場合があります。exteNd Director 開発環境では、「高速展開」を使用して、このような目的を実現できます。高速展開を指定するには、[展開設定]ダイアログボックスでチェックボックスをオンにするだけです(展開設定の作成を参照してください)。アプリケーションの展開時には、ターゲットサーバのネイティブファイルシステムの展開機能が使用されます。

高速展開が最も役立つのは、JSPページ、HTMLページ、イメージ、WEB-INF\libディレクトリ内のJAR、またはWEB-INF\classesディレクトリ内のクラスが含まれるWebアプリケーションを変更した場合です。他のアプリケーションコンポーネント(WARタグライブラリまたは展開記述子などの)を変更した場合は、exteNd Directorにより、自動的に完全展開が実行されます。

For more information    高速展開環境の設定の詳細については、展開設定の作成を参照してください。ターゲットサーバにおけるネイティブファイルシステムの展開の詳細については、展開の具体的な処理を参照してください。

exteNd Directorでは、アプリケーションサーバベンダによって高速展開機能がサポートされている場合に限り、この機能を使用できます。次の表は、高速展開機能をサポートしているJ2EEサーバ、および高速展開できるアーカイブの種類について説明しています。

サーバ

EAR

WAR

EJB

CAR

RAR

Novell exteNd Application Server

SilverStream eXtend Application Server

不可

不可

不可

BEA WebLogic

不可

不可

Apache Tomcat

不可

不可

不可

不可

 
Top of section

運用展開

アプリケーションを完全にテストし、運用環境に展開する準備が整ったら、ターゲットサーバの展開設定で高速展開のチェックボックスをオフにすることで、アプリケーションをサーバに展開できます。exteNd Directorは、ターゲットサーバのネイティブ展開ツールを使用して、適切な展開ディレクトリにアプリケーションを展開します。

 
Top of section

外部展開ツール

別の方法として、使用するJ2EEサーバで提供されている展開機能を使用して、生成されたアーカイブをexteNd Director 開発環境の外で展開することもできます。これは、exteNd Directorによって生成されるアーカイブが標準J2EEアーカイブであるためです。

 
Top of page

J2EEアーカイブの展開

exteNd Director 開発環境を使用してJ2EEアーカイブを展開するには、「アーカイブ」が次の要件を満たす必要があります。

次の情報を設定する必要があります。

開発環境には、次のアクセスまたは許可が必要です。

これらの条件がすべて満たされている場合は、プロジェクトの展開を参照してください。

 
Top of section

アーカイブのコンテンツ

SunのJ2EE仕様では、さまざまなJ2EEアーカイブを展開用にパッケージ化する方法が定義されます。展開を行う前に、アーカイブが次の要件を満たしていることを確認してください。次の表は、要件を簡単に示しています。詳細については、『J2EE Blueprints』を参照してください。このドキュメントは、java.sun.com/j2ee/docs.htmlにあります。

J2EEモジュール

標準のアーカイブ要件

アプリケーションクライアント

次を含むJARファイル

  • アプリケーションクライアントを実装するJavaクラス

  • JARの/META-INFディレクトリにある展開記述子application-client.xml

  • Main-Classエントリを持つマニフェストファイル

EAR

次を含むEARファイル

  • コンポーネントのアーカイブファイル(EJB JARファイル、WARファイル、およびアプリケーションクライアントJARファイルなど)。各コンポーネントには、専用の展開記述子を含める必要があります。

  • EARの/META-INFディレクトリにあるEARの展開記述子application.xml

EJB JAR

次を含むJARファイル

  • Bean実装クラス、リモートインタフェースとホームインタフェース、プライマリキークラス(必要な場合)、およびその他のユーティリティクラス

  • JARの/META-INFディレクトリにある展開記述子ejb-jar.xml

RAR

次を含むRARファイル

  • リソースアダプタの実装に必要なクラス

  • JARの/META-INFディレクトリにある展開記述子ra.xml

WAR

次を含むWARファイル

  • JSPソースファイル、Webサービス、サーブレットクラス、その他のサポートJavaコンポーネント、HTMLドキュメント、イメージ、およびアプリケーションに必要なその他のファイル

  • WARの/WEB-INFディレクトリにある展開記述子web.xml

  • WARの/WEB-INF/classesディレクトリにあるヘルパクラス

  • WARの/WEB-INF/libディレクトリにあるヘルパライブラリ

For more information    詳細については、を参照してください。

サーバ展開情報

各J2EEサーバにはランタイム情報が必要で、この情報には各サーバで独自の形式が使用されます。次の表は、サポートされている各サーバに必要な展開ドキュメントについて説明しています。

J2EEサーバ

アーカイブ

サーバ展開情報

Novell exteNdApplication Server

SilverStream eXtendApplication Server

CAR (アプリケーションクライアント)

EAR

EJB

RAR

WAR

各タイプのアーカイブは、「展開計画」と呼ばれるXMLベースのドキュメントを使用します。展開計画には、任意のファイル名を指定でき、アーカイブファイル外部の任意の場所に配置できます。各アーカイブタイプのDTDは、サーバにより定義されます。

For more information    詳細については、を参照してください。

「展開計画エディタ」を使用して、展開計画を作成して追加できます。

For more information    詳細については、展開計画エディタを参照してください。

BEA WebLogic

アプリケーションクライアント

EAR

EJB

RAR

WAR

EAR以外の各タイプのアーカイブには、XMLベースの特別なドキュメントが必要です。EARには特別な展開ドキュメントは必要ありませんが、EARに含まれる個々のモジュールには適切なWebLogic展開ドキュメントが必要です。

For more information    詳細については、WebLogicのマニュアルを参照してください。

Apache Tomcat

WAR

特別なファイルは必要ありません。

 
Top of section

展開設定の作成

プロジェクトを展開する前に、プロジェクトの展開設定を定義する必要があります。展開設定により、プロジェクトの展開を計画しているサーバについての情報が提供されます。

Procedure 展開設定を作成する

  1. [プロジェクト]>[展開設定]の順に選択します。

    注記:   exteNd Application Serverに展開する場合に、プロジェクトの現在の展開計画がサーバプロファイルに関連付けられていない場合は、[展開設定]ダイアログボックスでサーバプロファイルを指定するよう求めるメッセージが表示されます。

  2. [サーバプロファイル]タブで、次の情報を指定します。

    オプション

    操作内容

    プロファイル名

    リストからサーバプロファイルを選択するか、[新規]をクリックして新しいプロファイルを作成します。

    For more information    サーバプロファイルの詳細については、サーバプロファイルを参照してください。

    このサーバプロファイルをすべてのプロジェクトのデフォルトとして使用する

    このオプションを選択すると、現在のサーバプロファイルが新しいプロジェクトのデフォルトのプロファイルになります。

    [ユーザ名]および[パスワード]

    安全なサーバを使用している場合は、[ユーザ名]テキストボックスおよび[パスワード]テキストボックスに、サーバに対して認証されたユーザ名およびパスワードを入力します。

  3. [展開情報]タブを選択します。

  4. 高速展開をサポートしているサーバで、次のオプションを指定します。

    オプション

    操作内容

    高速展開を有効にする

    テスト用に高速展開機能を使用してアーカイブを展開する場合、このチェックボックスをオンにします。運用展開を行う場合は、オフにします。

    実行される処理 - このチェックボックスをオンにすると、exteNd Directorは、サーバプロファイルで指定した高速展開ディレクトリにファイルを書き込みます。

    注記:   サーバプロファイルで高速展開ディレクトリを設定していない場合は、設定するよう求められます。このディレクトリは、サーバが展開ファイルを書き込むディスク上の場所になり、アプリケーションサーバベンダによって定義されています。多くのサーバでは特定のディレクトリが必要です。リストについては、サーバプロファイルを参照してください。

    その他の処理 - 以降の高速展開では、展開領域への更新はexteNd Directorによって管理されます。手動による操作は必要ありません(サーバの高速展開を直接使用する場合は、手動による操作が必要です)。

    「使用する場合 - 高速展開は、アプリケーション開発サイクルの開発/テスト/調整の段階で使用します。アプリケーションを運用環境に展開する際には、このオプションを使用しないでください。

    For more information    高速展開、および各サーバによるこの機能のサポートと特別な要件の詳細については、展開の具体的な処理を参照してください。

  5. サーバ固有の情報を指定します。

    Novell exteNdアプリケーションサーバおよび SilverStream eXtendアプリケーションサーバに対しては、次の情報を指定します。

    オプション

    操作内容

    展開計画

    展開計画のファイル名およびディスクの場所を指定します。

    既存の展開を上書き

    すでに展開されている、タイプと名前が同じオブジェクトを現在の展開で上書きする場合、このチェックボックスをオンにします。

    このチェックボックスがオフで、同じ名前とタイプのオブジェクトがサーバ上ですでに存在する場合、展開は失敗します。

    詳細度

    表示する情報メッセージのレベルを指定します。

    値の範囲は0 (メッセージなし)から5 (最多のメッセージ)です。

    JSPコンパイルエラーを無視する

    WARおよびWARを含むEARにのみ適用します。

    展開でJSPページのコンパイル時のエラーをすべて無視し、正常に作成された項目のみを展開する場合、このチェックボックスをオンにします。

    このチェックボックスがオフの場合、コンパイルエラーが発生し、展開は失敗します。

    SilverCmdフラグ

    (オプション)展開コマンドのコマンドライン引数を指定します。

    For more information    実行する展開コマンドの詳細については、展開の具体的な処理を参照してください。

    複数の引数を指定する場合、区切り文字としてスペースを使用します。VM引数を渡す場合、引数の前に+を付ける必要があります。例は次のとおりです。

      +Xmx256
    

    ここに入力した値はすべて、構築された展開コマンドの最後に追加されます。

    BEA WebLogic Serverに対しては、次のオプションを指定します。

    オプション

    操作内容

    WebLogicアプリケーション名

    アプリケーションの展開名を指定します。ユーザはこの名前を、アプリケーションを起動するURLの一部として使うことになります。

    高速展開の場合、この展開名は、展開ディレクトリ下のディレクトリ名になります。

    デフォルトはプロジェクト名です。

    ターゲットの生成

    このボタンをクリックすると、サーバプロファイルで指定したターゲットサーバに展開するコンポーネントのリストが自動的に作成されます。リストは[コンポーネントとターゲット]テキストボックスに表示されます。

    コンポーネントとターゲット

    次のいずれかを実行します。

    • [ターゲットの生成]ボタンのクリック時に作成された値をそのまま使用する

    • [ターゲットの生成]ボタンのクリック時に作成された値を編集する

    • 適切なWebLogic構文を使用して、コンポーネント名およびターゲットサーバを手動で入力する

    展開オプション

    次のオプションの1つを選択します。

    • [展開] - アプリケーションを展開します。アプリケーションを初めて展開する場合は、このオプションを使用します。高速展開のチェックボックスをオンにしている場合、このオプションで高速展開が実行されます。それ以外の場合は、運用展開が実行されます。

    • [更新] - 展開されたアプリケーションを更新します。すべて再展開する場合、すでに展開したアーカイブを更新する場合、または無効になっているアプリケーションを有効にする場合、このオプションを使用します(一部のサーババージョンでは使用できません)。

    • [展開解除] - アプリケーションを削除するオプションを使用して、アプリケーションを無効にします。

    • [リスト] - 現在のプロジェクトのサーバプロファイルで指定したサーバにあるすべての展開済みアプリケーションのリストを表示します。

    • [ユーザ定義] - WebLogicのコマンドを指定できます。この値が指定されている場合、exteNd Directorは、[WebLogicオプション]テキストフィールド(次を参照)で指定されているコマンドのみを使用します。

    JVMオプション

    サーバのJVMに対するコマンドライン引数を指定します。複数のオプションを区切るには、スペースを使用します。

    これらの値は、構築された展開コマンドの最後に追加されます。

    WebLogicオプション

    サーバ固有のオプションを指定します。複数のオプションを区切るには、スペースを使用します。WebLogic Serverで実行するアクションの完全なコマンドを指定する必要があります。例は次のとおりです。

      -unprepare -name War23
    

    [展開オプション]で[ユーザ定義]が選択されていることを確認してください。選択されていない場合、exteNd Directorでは、このテキストボックスに入力した値は無視されます。

    これらの値は、構築された展開コマンドの最後に追加されます。

    exteNd Directorではエラーはチェックされませんが、サーバにより返されたエラーメッセージは出力ペインに表示されます。

    デバッグ

    WebLogic展開ツールで生成されたデバッグ情報を表示する場合、このオプションを選択します。

  6. [OK]をクリックして、プロジェクトファイルに展開設定を保存します。

 
Top of section

プロジェクトの展開

Procedure プロジェクトを展開する

  1. プロジェクトを開きます。

    展開するすべてのアーカイブがプロジェクトに定義されている必要があります。他のIDEでアーカイブを作成した場合、展開に先立ってプロジェクトを作成する必要があります。

  2. サーバ固有の展開情報およびターゲットサーバの場所が適切な形式で指定されていることを確認します。

    For more information    詳細については、サーバ展開情報を参照してください。

  3. プロジェクトの展開設定を定義します。

    For more information    詳細については、展開設定の作成を参照してください。

  4. [プロジェクト]>[アーカイブの展開]の順に選択します。

    注記:   サーバが実行されていない場合は、展開に失敗します。

 
Top of page

展開の具体的な処理

プロジェクトを展開する場合、exteNd Directorは、展開設定を使用してJ2EEサーバを決定します。その後、次のように動作します。

  1. Javaファイルをコンパイルしてアーカイブを作成します(JSPファイルは、展開時、またはブラウザからURLが呼び出されたときにコンパイルされます)。

  2. コンパイルが成功すると、ターゲットサーバに対して適切な展開コマンドをコールします。

    次の表は、各サーバでコールされる展開コマンドを説明しています。

    サーバ

    アーカイブ

    展開コマンドの説明

    Novell exteNdApplication Server

    SilverStream eXtendApplication Server

    CAR

    標準/運用展開 - SilverCmd DeployCAR。

    高速展開 - CARに対してはサポートされていません。

    EAR

    標準/運用展開 - SilverCmd DeployEAR。

    注記:   EAR内から個別のモジュールを展開するには、SilverCmdフラグとして-mオプションを渡します。

    高速展開 - EAR内のWARの高速展開がサポートされています。この動作は、次のとおりです。

    • EAR内のWARに含まれるJSPページ、HTMLページ、CLASSファイル、またはJARファイルが変更されている場合、exteNd Directorは、サーバのJSP/FS展開を呼び出します。

    • EARの他のファイル(EAR展開計画、EAR展開記述子、EJBアーカイブ、クライアントアーカイブ、WAR展開計画、またはWARタグライブラリなど)が変更されている場合、exteNd Directorは、標準/運用展開を呼び出します。

    • 以降の高速展開では、展開領域の更新はexteNd Directorによって管理されます(したがって、ユーザが、サーバの高速展開を直接使用する場合に必要な手動による操作は必要ありません)。

    EJB JAR

    標準/運用展開 - SilverCmd DeployEJB。

    高速展開 - EJBに対してはサポートされていません。


    WAR

    標準/運用展開 - SilverCmd DeployWAR。

    高速展開 - JSP/FS。

    JSP/FSプロセス中の動作は、次のとおりです。

    • exteNd Directorは、WARファイルを/webapps/DBname/URLディレクトリに展開します。ここで、DBnameはファイルシステムに展開したアプリケーションを含むデータベース名、URLはアプリケーションの展開計画で指定されているURLです(複数のURLが指定されている場合は最初のURL)。

    • 以降の高速展開では、展開領域の更新はexteNd Directorによって管理されます(したがって、サーバの高速展開を直接使用している場合に必要な、RELOADファイルの作成などの手動による操作は必要ありません)。

    • 高速展開を指定すると、exteNd Directorは<deployToFileSystem>属性を自動的に更新します。

    BEAWebLogic

    サポートされているすべてのアーカイブ

    標準/運用展開 - weblogic.deployまたはweblogic.deployer(サーバのバージョンによる)。

    高速展開 - exteNd Director開発環境は、サーバのネイティブユーティリティを使用して、EAR、EJB、およびWARの高速展開を提供します。高速展開を実行する前に、WebLogic管理コンソールでWebLogic自動展開を有効にする必要があります。自動展開の設定の詳細については、WebLogicのマニュアルを参照してください。

    • 高速展開中に、exteNd Directorは、変更されたファイルをユーザが指定した展開ディレクトリにコピーし、REDEPLOYファイルを処理します。

    ApacheTomcat

    WAR

    標準/運用展開 - copy。

    • サーバの\webappsディレクトリにアーカイブをコピーします。

    • 標準展開後は、サーバを再起動する必要があります。

    高速展開 - copy。

    • アーカイブを展開してから、そのコンテンツをユーザが指定した展開ディレクトリにコピーします。

    • 以降の高速展開では、変更されたファイルのみが展開ディレクトリにコピーされます。

    • 高速展開後は、サーバを再起動する必要はありません。

  3. ターゲットサーバの展開コマンドにより、ターゲットサーバに適切な展開オブジェクトが作成されます。

  4. exteNd Directorにより、出力ペインの[出力]タブにステータス(成功または失敗)を示すメッセージ、あるいは警告やエラーメッセージが表示されます。

 
Top of page

Webサービスの展開

Webサービスウィザードを使用するか、またはNovell exteNd WebサービスSDKを直接使用して、exteNd Director 開発環境でWebサービスを作成すると、HTTP SOAP要求からWebサービスへのアクセスを処理するサーブレットが生成されます。そのため、Webサービス(各WARに対して1つまたは複数)をパッケージ化して、Webサービスが実行されるJ2EEサーバに展開するために、WARが必要になります。

この章の前半で説明されているように、そのWARを通常の方法で展開します。さらに、WebサービスSDKで必要なアーカイブにランタイムでアクセスできることを確認します。

次の目的に必要なJARファイルのリスト

参照

Webサービス

Webサービスの生成に関する章の「生成の準備

Webサービスコンシューマ

Webサービスコンシューマの生成に関する章の「生成の準備

このアクセスの設定方法は、使用するJ2EEサーバのタイプに応じて異なります。

次のサーバのいずれかに展開する場合は、必要なJARファイルをクラスパスに追加する必要があります(クラスパスに追加する手順については、各サーバのマニュアルを参照してください)。

Novell exteNd Application ServerまたはSilverStream eXtend Application Serverに展開する場合は、JARがWARのWEB-INF/libディレクトリに含まれていれば、必要なJARをサーバのクラスパスに追加する必要はありません。必要なJARがWARに含まれていない場合は、それらのJARをサーバのAGCLASSPATH環境変数に追加するか、またはclasspathJars展開計画要素で指定する必要があります(AGCLASSPATHおよびclasspathJarsについては、各サーバのヘルプを参照してください)。

必要なJARを入手するには、Novell exteNdのtools\compilelibディレクトリからコピーします。

 
Top of page

アーカイブの展開解除

展開サーバによっては、exteNd Director 開発環境内から、展開したアーカイブを無効にしたり、サーバから削除したりすることができます。

exteNd Directorは、展開解除を直接実行するのではなく、この機能を実行するサーバ機能をコールします。そのため、サーバでアーカイブの削除はサポートされていても、無効化がサポートされていない場合などは、開発環境からアーカイブを削除することはできますが、無効にすることはできません。

一般的に、アーカイブを無効にした場合、ファイルはサーバに残りますが使用不可能になります。アーカイブを削除した場合は、ファイルはサーバから物理的に削除されます。ただし、exteNd Directorは、単にサーバの展開解除機能を実行するだけなので、処理の正確な内容はサーバにより異なります。たとえば、高速展開によって展開されたアプリケーションを展開解除しても、展開ディレクトリが削除されたり、その名前が変更されたりするとは限りません。単にアプリケーションへの参照がメタデータから削除されるだけの場合もあります。アーカイブを展開解除した場合に実行される処理の正確な内容については、サーバのマニュアルを参照してください。

次に、exteNd Director 開発環境のサーバ展開解除サポートの概要について説明します。

サーバ

無効化

削除

注記

Novell exteNdApplication Server

SilverStream eXtendApplication Server

なし

あり


BEA WebLogic

あり

あり


Apache Tomcat

なし

あり

展開解除すると、webappsディレクトリからWARおよびWebアプリケーションディレクトリが削除されます。

Procedure アーカイブを展開解除する

  1. プロジェクトを開いた状態で、[プロジェクト]>[アーカイブの展開解除]の順に選択します。

    注記:   展開サーバで展開解除機能が提供されていない場合、このメニュー項目は無効になっています。

    表示されるダイアログボックスは、プロジェクトの展開設定で指定したサーバのタイプによって異なります。

  2. ダイアログボックスのメッセージに従います。

    アーカイブが無効化または削除されます。出力ペインの[出力]タブで、発行されたコマンドを参照できます。



Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...