第2章
この章では、exteNd Directorプロジェクトを作成する方法について説明します。 この節には、次のトピックが含まれています。
exteNd Directorでの作業した内容は、「プロジェクト」に整理されます。 プロジェクトには次のものが含まれます。
JARのセット(含まれるJARは、プロジェクトの環境設定の選択によって異なります。詳細については、サブシステムアーキテクチャを参照してください)。
プロジェクトファイルには拡張子.SPFが付きます。 (1つのSPFファイルに、さまざまな種類のコンポーネントとリソースが複数含まれることがあります)。
プロジェクト全般については、『ユーティリティツール』のプロジェクトとアーカイブに関する章で詳しく説明しています。
デフォルトプロジェクト exteNd Directorをインストールすると、Express Portal.spfというデフォルトプロジェクトがシステムにインストールされ、サーバに展開されます(インストールタイプによります)。 このプロジェクトは完成した実用的なアプリケーションで、製品用のポータルを作成する土台として使用できます。 詳細については、『ポータルガイド』のExpress Portalに関する章を参照してください。
exteNd Directorでは、さまざまな種類のプロジェクトを作成するウィザードが利用できます。 プロジェクトタイプを正しく選択するには、次の点についての判断や知識が必要です。
exteNd Directorは、ポートレットアプリケーションおよびexteNd Directorプロジェクトという2つのプロジェクトタイプをサポートします。
このプロジェクトタイプを選択 |
対象となるアプリケーション |
展開の検討事項 |
---|---|---|
ポートレットアプリケーション |
既存のポートレットWARをexteNd Directorポータルで使用します。 ポートレットアプリケーションウィザードによって、exteNd Directorのポートレットランタイムコンテナがポートレットアプリケーションに追加されます。 |
共有ライブラリ、非共有ライブラリ、およびサードパーティのJAR環境をサポートします。 共有ライブラリ環境に対しては、
|
非共有ライブラリ環境およびサードパーティのJAR環境の場合 |
||
プロジェクト |
次のようなものを含むexteNd Directorプロジェクトを作成することがあります。 プロジェクトウィザードを使用して、次のものを作成します。
プロジェクト生成サイクルの何らかの決定を行う必要があり、選択に基づいたこのウィザードへの複数のパスが存在することを意味します。
|
共有ライブラリ、非共有ライブラリ、およびサードパーティのJAR環境をサポートします。 共有ライブラリ環境の場合は、 |
|
|
非共有ライブラリ環境およびサードパーティのJAR環境の場合は、
|
ポートレットアプリケーションまたはexteNd Directorプロジェクトが作成できます。
「ポートレットアプリケーション」を作成するには、ポートレットアプリケーションプロジェクトの設定を参照
exteNd Directorプロジェクトを作成するには、exteNd Directorプロジェクトの作成を参照
検索内容に対するビューの使用 「ビュー」を使用すると、exteNd Directorプロジェクト内でパーソナライズされた項目リストを表示できます。 ビューは、リソースセット内のリソース、またはシステム環境設定とサービス設定を表示するためにも使用できます。exteNd Directorでは定義済みのビューが出荷状態でも利用できますが、目的に応じたプロジェクト項目を表示するカスタムビューを定義することもできます。
exteNd Directorプロジェクトでのビューを使用した項目の検索に関する詳細については、を参照してください。
既存のポートレットアプリケーションをexteNd Directorポータルで実行するための設定
次の既存のWebアプリケーションWARの指定の説明のとおりに進みます。
[次へ]をクリックして、次のウィザードパネルに進みます。 次のプロジェクト名とアーカイブ名の指定を参照してください。
ウィザードによってexteNd Director対応のWebアプリケーションWARが生成されます。
WARのトップレベルに標準J2EE WEB-INF/libフォルダがあります。 WEB-INFフォルダには、次の重要なファイルがあります。
ファイル |
説明 |
---|---|
novell-portlet.xml |
タイトルバーやプレビューイメージなどに対するさまざまな初期設定および設定の指定を可能にする、オプション追加のポートレット展開記述子 |
portlet.xml |
Java Portlet 1.0で必須 |
web.xml |
すべてのJ2EE準拠WARに必須 |
WEB-INF/libフォルダ内のconfフォルダの中に、次の3つの重要なexteNd Directorファイルがあります。
ファイル |
説明 |
---|---|
resourceset.xml |
リソースセットのコンテンツ管理に使用します。 リソースセットに含めるJARやファイル拡張子を追加できます。 |
config.xml |
WARレベルのサービス(Director管理コンソールやCMS管理コンソールなど)の設定プロパティを設定します。 |
services.xml |
WARレベルのサービスに対するプロパティを設定します。 |
次のプロジェクトテンプレートの選択の説明のとおりに進みます。
[次へ]をクリックして、次のウィザードパネルに進みます。 次のプロジェクト情報の指定を参照してください。
次のように[プロジェクト情報]パネルの項目をすべて入力します。
ヒント: 順番にテキストボックスに情報を入力すると、後続のテキストボックスには有 効なデフォルト値が自動的に入力されます。
プロジェクト設定 |
指定する内容 |
---|---|
プロジェクト種類 |
EARまたはWARを選択 |
プロジェクト名 |
プロジェクトファイルに使用する名前を指定します(自動的に.SPFの拡張子が付けられます)。 プロジェクト名を入力すると、自動的にアーカイブ名が入力されます。 |
プロジェクト場所 |
プロジェクトのルートディレクトリを指定します。ウィザードによって、この場所にテンプレートファイルおよびサブディレクトリがコピーされます。 パスを入力するか、[参照]ボタンを使用してディレクトリの場所を選択します。あるいは、その両方の操作を実行します。 存在しない場所もできます。 プロジェクトの場所を入力すると、自動的にアーカイブの場所が入力されます。 絶対パスを指定しない場合、ウィザードはexteNd Director binディレクトリを使用します。 |
アーカイブ名 |
生成されるアーカイブファイルの名前を指定します。指定されたプロジェクトタイプに基づいて、.EARまたは.WARの拡張子が自動的に付けられます。 [Navigation Pane]のアーカイブレイアウトにアーカイブ名が表示されます。 デフォルトのアーカイブ名を使用するか(プロジェクト名と一致します)、新しい名前を入力できます。 |
アーカイブ場所 |
プロジェクトアーカイブのディレクトリ場所を指定するか、デフォルト(プロジェクトの場所)を使用します。 |
J2EE バージョン |
サーバでJ2EE 1.3がサポートされている場合は、J2EE 1.3を選択します。それ以外の場合は、J2EE 1.2を選択します。 注記: 後でプロジェクトのJ2EEバージョンを変更する場合は、『ユーティリティツール』のJ2EEバージョンの処理方法に関する章を参照してください。 |
指定したディレクトリが存在しない場合は、ウィザードによってディレクトリがそれぞれ作成されます。 新しいディレクトリを確認するには、[はい]をクリックします。
次のウィザードパネルが表示されます。 次のプロジェクト設定の指定を参照してください。
[標準]または[カスタム]を選択して、パネルの項目をすべて入力します。
[次へ]をクリックして、次のウィザードパネルに進みます。 次のアプリケーションオプションの指定を参照してください。
[カスタムWebアプリケーション]パネルで、WARに対してこれらの設定を行い、[次へ]をクリックします。
カスタムWAR設定 |
指定する内容 |
---|---|
カスタムWebアプリケーションを今すぐ作成する? |
(EARプロジェクトに対してのみ)。 カスタムWebアプリケーション機能を追加するには[はい]を選択します。EARプロジェクトでは、ウィザードにはWebアプリケーションに対して個別のWARプロジェクトが含まれています。 注記: exteNd DirectorにはWARプロジェクト用のカスタムWebアプリケーションが必要となるため、WARプロジェクトを作成する場合はこのオプションは利用できません。 |
名前 |
WARのコンテキスト名。アプリケーションのページのURLに使用されています。 注記: WARプロジェクトの場合、WARのコンテキスト名は[プロジェクト情報]パネルで指定されている[プロジェクト名]と同じです。 WARプロジェクトを作成する場合、このオプションは編集できません。 |
リソース |
コンポーネントコレクション、タグライブラリ、およびアプリケーションWARに含めるルールの条件とアクションを選択します。 使用可能なリソースのリストは、選択したサブシステム(1つまたは複数)により異なります。 |
テンプレートリソースの場所 |
後でプロジェクトに追加できる使用可能なリソースを保存するための場所。 デフォルトでは、TemplateResourcesサブディレクトリとなります。 別の場所を指定することもできます。exteNd Directorによって、使用可能なリソースがコピーされます。
|
プロジェクトにContent Managementサブシステムが含まれる場合は、コンテンツ管理検索設定の指定を参照してください。
その他の場合は、ディレクトリ環境設定を参照してください。
すべてのexteNd Directorプロジェクトは、「テンプレート」に基づいています。テンプレートとは、サブシステム(カスタム環境設定を持つ可能性があります)およびアプリケーションモジュールのまとまりです。 テンプレートはファイルシステム上のテンプレートディレクトリに格納されており、ウィザードによってファイルがテンプレートからコピーされてプロジェクトが作成されます。 テンプレートには、exteNd Director EARまたはWARのexteNd Directorプロジェクトファイル(SPFの拡張子を持ちます)を含めることができますが、プロジェクトファイルは必要ではありません。 テンプレートにプロジェクトファイルが含まれている場合、テンプレートプロジェクトを開いて、テンプレートにカスタム機能を追加できます。
テンプレートの制限 既存のexteNd DirectorEARプロジェクトをテンプレートとして開くことができます。プロジェクトが一度作成されると(モジュールおよびコンポーネントをテンプレートから新しいプロジェクトにコピーする方法で作成されます)、ソーステンプレートとの関連はなくなります。テンプレートに適用された変更は、そのテンプレートから派生した既存のプロジェクトには反映されません。
使用可能なテンプレート 次の2つのテンプレートがインストールされています。
テンプレート |
機能性 |
exteNd Directorインストールディレクトリ内の場所 |
---|---|---|
exteNd Director |
exteNd Directorアプリケーションの基本的なフレームワーク。使用可能なすべてのサブシステムが含まれています。 |
\templates |
サンプル |
アプリケーション作成技術を示すさまざまなサンプルモジュール。 |
\samples |
[コンテンツ管理検索]パネルには、 [リポジトリ]タブ、[同期化]、および[フィルタ]タブという、3つのタブがあります。
環境設定 |
指定する内容 |
---|---|
バイナリドキュメントのテキストフィルタディレクトリ |
バイナリファイル形式を持つドキュメントをインポートするためのAutonomyフィルタを検索する場所を指定します。デフォルトの場所はexteNd -Director-install-dir\Autonomy\OmniSlavesです。 |
標準セットアップを選択した場合は、ディレクトリ環境設定を参照してください。
カスタムセットアップを選択した場合は、Content Managementのキャッシュ環境設定を参照してください。
[コンテンツ管理キャッシュ環境設定]パネルで、次の設定が行えます。
[次へ]をクリックして、次のウィザードパネルに進みます。 次のディレクトリ環境設定を参照してください。
[ディレクトリ環境設定]パネルで、サーバ固有のセキュリティ領域を選択します。
ヒント: ターゲットサーバ上にexteNd Directorの以前のバージョンからのユーザリス トがある場合は、「exteNdサーバ(互換)」を選択します。
LDAP領域を選択した場合は、[ディレクトリLDAP環境設定]パネルでLDAP設定オプションを指定する必要があります。
[フレームワーク環境設定]パネルで、次のフレームワーク設定の値を指定します。
フレームワークオプション |
指定する内容 |
---|---|
Directorフレームワークデータソース |
アプリケーションのデータベースのJNDI名を指定します。データベースには、コンテンツおよびユーザ情報などのexteNd Directorアプリケーションデータが含まれています。指定する値は、ターゲットアプリケーションサーバにより異なります。 exteNd Application Serverに対して
exteNd Application Server 以外のアプリケーションサーバに対して 提示されている値をデータベースのJNDI名で置き換えます。たとえば、次のとおりです。 MyDBという名前のデータソースの場合、MyDBと指定します。 任意のアプリケーションサーバに対して 通常は、アプリケーションでJNDI名に直接アクセスする必要はありません。 ただし、アクセスする必要がある場合は、Framework APIを使用して、FrameworkService config.xmlに保存されているプロパティを取得できます(次のコーディング技術を参照)。 // get an EbiConfig object com.sssw.fw.api.EbiConfig myconfig = com.sssw.fw.factory.EboFactory.getConfig(); // get value from the key in config.xml String dsname = myconfig.getProperty("com.sssw.fw.datasource.jndi-name"); // access the data source try { javax.naming.InitialContext ctx = new javax.naming.InitialContext(); javax.sql.DataSource source = (javax.sql.DataSource)ctx.lookup(dsname); } catch(javax.naming.NamingException ne){} |
Locksmith |
ACLベースのセキュリティを使用するには、DACを使用してセキュリティを管理するためのユーザIDを指定します。 exteNd Director EARまたはWARを展開する際は、指定したIDがサーバの認証領域に存在する必要があります。 注記: アプリケーションでACLベースのセキュリティを使用しない場合は、Locksmithを[anonymous]に設定して、exteNd Director Admin要素に対してACLが設定されないようにします。
|
ユーザトランザクションサポートを有効にする |
チェックした場合、exteNd Directorのトランザクションサポートを使用します。 独自に、またはサードパーティの拡張機能を介してJTA機能を提供していないアプリケーションサーバへ展開する場合は、この設定のチェックを外します。 |
[Generated UID]フィールドに、クラスタに使用されるアプリケーション識別子が表示されます。これは変更できません。
exteNd Directorの書き込み可能なディレクトリを指定します。
[次へ]をクリックして、次のウィザードパネルに進みます。 次のAES暗号化キーを参照してください。
データベース内のポートレット 初期設定は、exteNd Directorによって「一意でない」デフォルトキーを使用して暗号化されます。 FIPS承認のAES暗号を使用して、デフォルトキーを一意なものにすることもできます。 アプリケーションにFIPS準拠のセキュリティが必要な場合は、新しいプロジェクトで固有のキーを生成することをお勧めします。
[AES Encryption Key]パネル上で、次のオプションを指定します。
オプション |
値 |
---|---|
新規AES暗号化キーの生成 |
チェックすると、保存されたポートレット初期設定に対する一意な暗号キーが、ウィザードによって生成されます。 このオプションをチェックすると、新しい暗号キーファイルが生成されます。 |
EARを選択した場合は、次のネームスペースアプリケーションを参照してください。
WARおよびLDAP領域を選択した場合は、LDAPユーザオプションを参照してください。
[ネームスペースアプリケーション]パネル上で、exteNd DirectorアプリケーションのURLに使用するネームスペースを指定する必要があります。デフォルトはプロジェクト名です。ネームスペース では、アプリケーションに類似したURLおよびコンテンツがある場合、複数のexteNd DirectorEARファイルを同じサーバに展開できます。 たとえば、いくつかの異なるEARファイルのDACを同じサーバに展開すると、EARネームスペースが有効でない限り、アプリケーションサーバではDACの異なるバージョンを区別できません。 競合するアプリケーションがない場合は、アプリケーションのURLが短くなるようにネームスペースを無効にできます。
注記: EARのネームスペースは、EARプロジェクトにのみ適用されます。[ネームスペースアプリケーション]パネルはWARプロジェクトに対しては表示されません。
exteNd Directorアプリケーションのネームスペースについては、EARネームスペースを参照してください。
[ネームスペースアプリケーション]パネルで、ネームスペースコンテキストを入力して、[はい]チェックボックスがオンであることを確認して、ネームスペースを有効にします。
LDAP領域を選択した場合は、次のLDAPユーザオプションを参照してください。
アプリケーションにWEBDAVが含まれていない場合は、次の概要パネルにスキップします。
その他の場合は、WebDavの設定を参照してください。
LDAP領域を選択した場合は、[ユーザ LDAP オプション]パネルでユーザオプションを指定する必要があります。
重要: LDAP領域を使用するプロジェクトを展開する前に、次の設定手順を実行する必要があります。
詳細については、LDAPの展開前のタスク(eDirectoryのみ)に関する節を参照してください。
[WebDAV環境設定]パネルでは、WebDAVアクセスのURLを作成するための設定を行えます。 ユーザのWebDAVクライアントプログラムでは、コンテキストルートおよびサーブレットパスが、exteNd DirectorアプリケーションでWebDAVサーバにアクセスするためのURLとして使用されます。 デフォルト値を変更して、短いURLまたはアプリケーションに関連付けたURLを指定することもできます。
[次へ]をクリックして、次のウィザードパネルに進みます。 次の概要パネルを参照してください。
[概要]パネルで、プロジェクトアーカイブをすぐに作成しない場合は[ウィザードが終了した後でプロジェクトを作成します。]チェックボックスをオフにします。
ヒント: 最近作成されたプロジェクトは、J2EE記述子ファイルの編集およびexteNd Director Web階層ツールの展開に必要です。ウィザードで作成プロセスを開始するか、後 で[プロジェクト]メニューの[ビルド]コマンドを選択できます。
ウィザードでテンプレートファイルをプロジェクトディレクトリにコピーするには少し時間がかかります。 オプションが選択されている場合、この処理が終了するとプロジェクトが作成されます。
[プロジェクトウィザード]によって、J2EE準拠のWARまたはEARが選択に応じて生成されます。
exteNd Director WARプロジェクトのトップレベルには、JSPページ、HTMLファイル、イメージ、および他のアプリケーションリソースを含むいくつかのフォルダがあります。 さらに、WEB-INFフォルダとMETA-INFフォルダという2つの標準J2EEフォルダがあります。
WEB-INF\libフォルダに次のものがあります。
コンパイルまたはランタイムサービスのいずれかのために、アプリケーションで必要となるJARのセット(グレー表示されている場合は、コンパイル時のみに必要でサーバに展開されないことを意味します)。
ConfigService.JAR\x97 exteNd Directorサブシステムそれぞれの設定ファイルを含みます。
exteNd Director WARプロジェクトには、関連付けられた「単一のWARファイル」があります。一方、exteNd Director EARには、いくつかのWARファイル(Boot.war、Portal.warなど)があります。EARプロジェクトで個別に保存されたWAR生成物のうちの多くは、WARプロジェクトでマージされます。たとえば、WARプロジェクトには、単一のWEB-INF\conf\config.xmlファイルおよび単一のWEB-INF\conf\services.xmlファイルが含まれます。これらのファイルには、それぞれEARプロジェクトで個別に維持されるエントリが含まれます。 同様に、WARプロジェクトには、すべてのWeb階層のエントリを含む単一のWEB-INF\web.xmlファイルが含まれます。EARプロジェクトでは、各Web階層には、個別に設定された独自のweb.xmlファイルがあります。
exteNd Director EARプロジェクトのトップレベルに、1つまたは複数の「サービスWAR」(サブシステムサービスを提供するWAR)があります。 ContentMgmtService.warおよびWebDAVService.warは、サービスWARの例です。
WEB-INF\libフォルダに次のものがあります。
ConfigService.jar\x97 プロジェクトの中に含まれる各exteNd Directorサブシステムの設定ファイルを含むJAR
コンパイルまたはランタイムサービスのいずれかにアプリケーションで必要なJARのセット(共有ライブラリ設定では、これらのJARファイルはグレー表示で括弧に囲まれて表示されます。これらは、コンパイル時に利用できますが、展開アーカイブには含まれません)
設定ファイルおよびサービスファイル exteNd Director EARプロジェクト内の各サブシステムは、次のような設定ファイルおよびサービスファイルに依存しています。
EARネームスペース J2EE仕様では、EARの名前がWARファイルのコンテキストの一部である必要はありません。この結果、同様のコンテンツを持つ複数のEARファイルを、同じサーバに展開する場合に問題が発生する可能性があります。たとえば、次のとおりです。 いくつかの異なるEARファイルのDACを同じサーバに展開すると、アプリケーションサーバでバージョンの異なるDACを区別できなくなります。 exteNd Directorでは、この問題を解決するため、「EARネームスペース」という概念が導入されています。ネームスペースは、exteNd Director Web階層およびカスタムWebアプリケーションにアクセスするためのURLの一部です。
exteNd Directorでプロジェクトウィザードを実行すると、EARネームスペースがEARプロジェクトに対して有効になるよう指定できます。ネームスペースを実装するため、exteNd Director は指定されたネームスペースの前に各WARのコンテンツを付けます。各WARのコンテキストは、EARのapplication.xmlファイルで指定されます。 プロジェクトウィザードでは、EARに割り当てられた名前をデフォルトのネームスペースとして使用します。
たとえば、EARのネームスペースを有効にして、MyEARというネームスペースを指定するとします。application.xmlの各モジュールセクションには、ネームスペースをWARの名前に付けるcontext-root要素があります。Content Managementサブシステムのモジュールセクションは、次のようになります。
<module> <web> <web-uri>ContentMgmtService.war</web-uri> <context-root>/MyEAR/ContentMgmtService</context-root> </web> </module>
他のサブシステムでも、同様のcontext-rootエントリが使用されます。
注記: Novell exteNd Application Serverの場合: SilverMaster以外のデータベースに展開すると、URLにはデータベース名も含まれます。
exteNd Director EAR内でのクラスロード WARファイルは、そのWAR内に含まれるJARファイルのクラスや、WARの外部でEAR内の他の場所に配置されたJARファイルのクラスにアクセスできます。exteNd Directorアプリケーションでは、これら両方の設定を利用しています。
WARのクラスパス WARファイルが、WAR内でJARファイルのサービスを使用する場合、WARのクラスはJARのクラスを問題なく検索できます。これは、これらのクラスが、WARのクラスロード環境に自動的に含まれるためです。ただし、WARファイルがWARの外部に保存されているJARファイルのサービスを使用する場合、WARの「クラスパス」にJARを追加する必要があります。J2EEアプリケーションでは、WAR内のMETA-INFディレクトリのMANIFEST.MFファイルでクラスパスを設定することによって、この操作が実行されます。
フレームワークのクラスパス exteNd Directorアプリケーションでは、フレームワークに対して「シミュレートされたクラスパス」も維持されており、これを使用して、フレームワークのクラスは特定のexteNd Director EAR設定で含まれた他のサブシステムJARファイルでクラスを検索できます。
各exteNd Directorサブシステムには、関連付けられた1つまたは複数のアーカイブファイルがあります。プロジェクトウィザードでサブシステムを選択する場合、ウィザードにより、作成するプロジェクトタイプ(EARまたはWAR)に必要なアーカイブが追加されます。さらに、ウィザードにより、サブシステムで存在する従属性が自動的に実行されます。たとえば、その他のサブシステムに依存するサブシステムを含める場合、それらのサブシステムもプロジェクトに含まれます。
サブシステムアーカイブファイルは、次の命名規則に準拠します。
一般的に、サブシステムは全体として展開されます。ただし、exteNd Directorでは、アーカイブファイルを個別に展開できます。 たとえば、UserTag.jarファイル、UserEjb.jarファイル、UserClient.jarファイルを含めずに、UserService.jarファイルを展開できます。
次の表は、各exteNd Directorサブシステムまたはサービスのアーカイブファイルを示します。
*PortletImpl.jarおよびPortletAPI.jarを使用
次の表では、exteNd Directorサブシステム間で相互関係について概説します。
exteNd Directorアプリケーションを正常に実行するためには、サードパーティのいくつかのアーカイブファイルを追加する必要があります。 非共有ライブラリ環境では、これらのモジュールは、exteNd Director EARプロジェクトの/libraryディレクトリ(WARプロジェクトのWEB-INF\libディレクトリ)で配信されます。ほとんどのマニフェストファイル (META-INF\MANIFEST.MF)には、従属関係のリストに挙げられた、これらのモジュールがあります。
プロジェクトウィザードおよびSetupウィザードでは、共有ライブラリ環境に対してこれらの従属関係を強制しています。他のサブシステムに依存するサブシステムを含める場合、これらの他のサブシステムもプロジェクトに含まれます。他のサブシステムが依存しているサブシステムを削除しようとする場合、Setupウィザードにより、依存サブシステムが最初に強制的に削除され、その後、依存されたサブシステムを削除できるようになります。 共有ライブラリ環境では、ウィザードによって従属関係が共用されることはありません。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...