10. Velocityの設定キー
2006.02.03 株式会社四次元データ 里見玲爾
Velocity 10章 Velocityの設定キー
- 10.1. Runtime Log
- 10.2. エンコード
- 10.3. VTL指示子
- 10.4. Velocimacro
- 10.5. リソース管理
この章ではVelocityで主に使用する設定キーについて解説します。
10.1. Runtime Log
Runtime Logについて設定できるキーには次のものがあります。
設定キー | 解説 | デフォルト値 |
---|---|---|
runtime.log | エラーや警告と情報を提供するメッセージのためのログファイルのフルパスと名前を指定します。 フルパスでない場合、カレントディレクトリからの相対パスとなります。 | velocity.log |
runtime.log.logsystem | インタフェースorg.apache.velocity.runtime.log.LogSystemでサポートするロギングのクラスの、 インスタンスのクラス名を指定します。 | なし |
runtime.log.logsystem.class | Velocityのログシステムのために使用されるクラスです。 | org.apache.velocity.runtime.log.AvalonLogSystem |
runtime.log.error.stacktrace | trueにすると各エラーカテゴリに対するスタックトレースを 有効にします。大量のログを生成するため、デバッグを完了したらfalseとするほうがよいでしょう。 | false |
runtime.log.warn.stacktrace | ||
runtime.log.info.stacktrace | ||
runtime.log.invalid.references | falseのとき、リファレンスが無効のときのログ出力がされません。 | true |
10.2. エンコード
エンコードに関するキーには次のものがあります。
設定キー | 解説 | デフォルト値 |
---|---|---|
input.encoding | テンプレートの入力エンコーディング文字を指定します。 | ISO-8859-1 |
output.encoding | VelocityServletなどからの出力ストリームのための文字エンコーディングです。 | ISO-8859-1 |
10.3. VTL指示子
VTL指示子に関するキーには次のものがあります。
設定キー | 解説 | デフォルト値 |
---|---|---|
directive.foreach.counter.name | #foreach指示子によるループカウントのコンテキストでのキーの名前を指定します。 | velocityCount |
directive.foreach.initial.value | #foreach指示子によるループカウントの最初の値を指定します。 | 1 |
directive.include.output.errormsg.start | #include指示子によるエラーの際のタグの最初と最後を定義します。 この2つが定義されていれば、".start msg .end"の形式でエラーメッセージがストリームに出力されます。 | <!-- include error : |
directive.include.output.errormsg.end | see error log --> | |
directive.parse.maxdepth | #parse指示子による解析の最大深度を指定します。再帰のループを防ぐために設定します。 | 10 |
10.4. Velocimacro
Velocimacroに関するキーは5章でも解説しましたが、もう一度紹介しておきます。
設定 | 解説 | デフォルト値 |
---|---|---|
velocimacro.library | Velocityエンジンの初期化のときに読み込むテンプレートライブラリのパスを指定します。 パスはファイルローダーリソースパスのルートからです。 | VM_global_library.vm |
velocimacro.permissions.allow.inline | テンプレートの中で#macro指定子によりVelocimacroを定義可能かどうかを指定します。 | true |
velocimacro.permissions.allow.inline.to.replace.global | Velocityエンジンの初期化の際に読み込んだテンプレートライブラリで定義されたVelocimacroを、 インラインで定義されたVelocimacroで上書きできるかを指定します。 | false |
velocimacro.permission.allow.inline.local.scope | インラインで定義されたVelocimacroが、定義されたテンプレートでのみ有効かどうかを指定します。 trueのとき、Velocimacroは定義されたテンプレートでのみ有効です。 | false |
velocimacro.context.localscope | Velocimacro内でVelocityContextの値に変更を与える場合(#set指定子などによる)、 その変更をVelocimacro内のみの一時的な変更とするか、永続的な変更とするかどうかを指定します。 | false |
10.5. リソース管理
リソース(vmファイル、テキストファイルなど)を管理するためのキーについては、 11章の「リソースローダの設定」で解説します。