機能概要
Resource Service は、特にスクリプト開発モデルのプログラムファイルを管理および Application Runtime への配布を行います。intra-mart システムの中枢的役割を果たしています。
Resource Service が管理するファイルは以下の通りです。
- プレゼンテーションページ(*.html)
- ファンクションコンテナ(*.js)
- 設定値定義ファイル(*.ini)
|
プログラム管理
Resource Service では、intra-mart システムの動作に必要な各プレゼンテーションページ(*.html)およびファンクションコンテナ(*.js)のプログラムファイルを集中管理しています。
Application Runtime が必要なプログラムを、Resource Service が自動的に配布します。
プログラムファイルは、Resource Service の スクリプト開発モデルのプログラムディレクトリ( %インストールディレクトリ%/pages/ ) 以下に保管 されています。
新規に作成したりカスタマイズしたプログラムファイルは、Resource Service の スクリプト開発モデルのプログラムディレクトリ 以下に保存するようにして下さい。
プログラムファイルが更新されると、Resource Service はファイルの更新日付の変化を感知して自動的にシステムに反映させます。
ディレクトリ構成
標準状態を前提として以下に説明します。
プログラムソースのルートディレクトリは、3種類あります。
- pages/platform/src ・・・ システム用のソース管理ディレクトリ
- pages/product/src ・・・ 追加パッケージ用のソース管理ディレクトリ
- pages/src ・・・ 通常のソース管理ディレクトリ
intra-mart WebPlatform/AppFramework のソースは、pages/platform/src にインストールされます(サンプルプログラムは、pages/src にインストールされます)。
また、追加パッケージ(イントラネット・スタートパックなど)のソースは、pages/product/src にインストールされます。
これらのソースは、変更する事ができません。
ユーザアプリケーション独自のソースは、pages/src に作成してください。また、パッケージのソースに対してカスタマイズをする場合、必要なソースを pages/src にコピーをしてから編集してください。
pages/platform/src または pages/product/src は、システムの基本ソースになります。絶対に編集をしないでください(pages/src にインストールされるサンプルプログラムは編集してもかまいません)。
パッケージのソースをカスタマイズする場合は、pages/platform/src や pages/product/src から必要なソースのみを pages/src にコピーしてから編集してください。pages/src にコピーすることにより、パッケージのパッチを適用したときに、パッチで変更されたソースを上書きされません(パッチは、pages/platform/src または pages/product/src にソースを展開します)。
スクリプト開発モデル実行エンジンは、ソースパスを次の順で検索します。
- pages/src
- pages/product/src
- pages/platform/src
したがって、カスタマイズするソースを pages/src にコピーしてから編集する事によって、カスタマイズしたソースが優先的に検索・実行されます(コピー元のシステムのソースは無視されます)。
スクリプト開発モデルの国際化対応機能を利用して地域化をする場合、下記ディレクトリに地域化させたディレクトリを配置してください。
- pages/i18n/[ロケールを表すキーワード]
スクリプト開発モデルの国際化対応機能を利用する場合は、imart.xmlの設定が必要です。
(サーバをインストールした初期状態では、日本語ロケールのみ設定されています。)
imart.xmlに以下のいずれかの設定項目を追加してください。
(詳細は「設定ガイド(Service編)」を参照してください)
- intra-mart/platform/service/resource/jssp/source-path/international/local
- intra-mart/platform/service/resource/jssp/source-path/international/directory
設定例1
|
英語ロケール「en」に対応したソースを格納するディレクトリを「pages/i18n/en」、
英語ロケール「en_US」に対応したソースを格納するディレクトリを「pages/i18n/en_US」とする場合
|
<intra-mart>
<platform>
<service>
<resource>
<jssp>
<source-path>
<international>
<local>
<en>
<directory>pages/i18n/en</directory>
</en>
<en_US>
<directory>pages/i18n/en_US</directory>
</en_US>
</local>
|
設定例2
|
「ロケールを表すキーワード」を検索する基準ディレクトリを「pages/i18n」とする場合
|
<intra-mart>
<platform>
<service>
<resource>
<jssp>
<source-path>
<international>
<directory>pages/i18n</directory>
|
「ロケールを表すキーワード」とは、java.util.Locale の仕様に準じた文字列になります。日本語ロケールの場合、通常は ja または ja_JP になります。
システムの地域化されたプログラムソースは、下記にインストールされます。
- pages/platform/i18n/[ロケールを表すキーワード]
- pages/product/i18n/[ロケールを表すキーワード]
これらも、カスタマイズをするときは、pages/i18n/[ロケールを表すキーワード]にコピーすることで、パッチによる上書きの影響を受けることなくカスタマイズをすることができます。
国際化機能を利用している場合、以下の順にソースが検索されます。
- 地域化されたソース
- 地域化されていない標準のソース
つまり、ユーザアプリケーションで言えば、以下の順に検索されます。
- pages/i18n/[ロケールを表すキーワード]
- pages/src
地域化されているソースを検索する場合、java.util.ResourceBundle と同様の検索が行われます。例えば、ロケールが ja_JP だった場合、以下の順にソースが検索されます。
- pages/i18n/ja_JP
- pages/i18n/ja
- pages/src
|