FreyjaServletに指定できる設定には以下のものがあります。
| 名前 | 説明 | 省略時の値 |
| templateParser | テンプレートファイルをパースするためのTemplateParserクラスのFQCN。 | net.skirnir.freyja.impl.TemplateParserImpl |
| tagEvaluator | タグを評価するためのTagEvaluatorクラスのFQCN。 | 省略不可 |
| tagEvaluator.KEY | TagEvaluatorにKEY という名前のプロパティとして設定したい値。 | なし |
| expressionEvaluator | テンプレート中に書かれた式言語を評価するためのExpressionEvaluatorクラスのFQCN。 | 省略不可 |
| tagRenderer | タグの評価結果をレンダリングするためのTagRendererクラスのFQCN。 | net.skirnir.freyja.impl.XHTMLTagRenderer |
| variableResolverFactory | 式言語に書ける変数を保持するVariableResolverオブジェクトを生成するためのファクトリ クラスであるVariableResolverFactoryクラスのFQCN。 |
net.skirnir.freyja.webapp.ServletVariableResolverFactory |
| transcriptVariablesToRequest | (variableResolverFactoryにServletVariableResolverFactoryが指定された時のみ有効) VariableResolverに変数がセットされた際にHttpServletRequestに対して同じ値を setAttribute()するかどうか。 |
false |
| context.KEY | テンプレートを評価する際に渡されるTemplateContextオブジェクトにKEY
という名前の プロパティとして設定したい値。 |
なし |
| templateRoot | テンプレートファイルが格納されているディレクトリの、Webアプリケーションの配備先 ディレクトリ相対パス。例えばtemplateRootとして「/template」を指定すると、 http://localhost:8080/context/a/b.zptにリクエストが来た場合に「/a/b.zpt」ではなく 「/template/a/b.zpt」というテンプレートファイルが処理される。 |
空文字列 |
| pageEncoding | テンプレートファイルの文字エンコーディング。 | Javaのデフォルト文字エンコーディング |
| requestEncoding | リクエストの文字エンコーディング。この値が指定されている場合は、テンプレートの処理 の前にHttpServletRequest#setCharacterEncoding(requestEncoding) が 呼び出される。 |
なし |
| responseEncoding | レスポンスの文字エンコーディング。テンプレートの評価結果であるStringをバイナリス トリームに変換する際に利用される。 |
UTF-8 |
| contentType | レスポンスのコンテントタイプ。charset指定を含めない場合、responseEncodingで 指定された文字エンコーディングがcharsetとして付与される。charsetを含めた場合は responseEncodingの指定よりも優先される。 |
text/html |
| useShiftJISInsteadOfWindows31J | 最終的にレスポンスヘッダに付与するContent-Typeのcharset指定がWindows-31J
であ る場合に、Shift_JIS という文字列に置き換えるかどうか。 Content-Typeヘッダのcharset指定をWindows-31Jとしている場合は、セキュリティの観点 からこの設定をtrueにすることを強く推奨する。 参考:「そろそろUTF-7について 一言いっとくか 」 なおテンプレート中に<meta>タグでContent-Typeを記述している場合は、併せて tagEvaluator.render.overwrite-content-type-meta-tagの値をtrueに設定して下さい。 テンプレート中のContent-Type指定も置換されるようになります。 |
false |
ZPTエンジンとしてFreyjaServletを動作させるには、最低限以下の設定をして下さい。
また、文字エンコーディングで問題が発生しないよう、全ての文字エンコーディングをUTF-8にそろえることを推奨します。 そのためには以下のように設定して下さい。