-サービステンプレートの決定プロセス

Mayaが提供するWEBページは、背後に複数のファイルが存在する可能性があります。Maya設定XMLが存在することもありますし、HTMLテンプレートが複数ある可能性もあります。Localeサンプルでは、locale.html / locale_ja.html / locale.mayaの三つのファイルがありました。一方、Helloサンプルのうちバインディング情報をHTMLテンプレートに埋め込んだもの([list3])では、WEBページサービスを構成するのはhello.htmlのひとつのファイルのみです。Mayaエンジン・サーブレットは以下のワークフローにてテンプレートを決定します。

  • リクエストリソース名の拡張子を取り除きmayaに変えた設定XMLを探す
  • 設定XMLがあった場合
    • pageエレメントおよびsuffix属性があればそのバインディング値を取得(テンプレート接尾辞)
    • 設定XML内にpageが無く、デフォルト設定にpageエレメントおよびsuffix属性があればテンプレート接尾辞取得
    • 取得したテンプレート接尾辞よりテンプレート決定。
  • 設定XMLが無かった場合
    • デフォルト設定にpageエレメントおよびsuffix属性があれば接尾辞を取得してテンプレート決定
  • 決定テンプレートが存在しなければ接尾辞なしのリクエストリソース名とする
  • なければ404をHTTPステータスコードとして返す

デフォルト設定については次項にて説明します。