【トラブル】【Java】【Velocity】 Velocity に関するトラブルシューティング

■ Velocity を使ったモジュールがLinux環境下になるとエラーになってしまう

 * Velocity を使ったモジュールにおいて、Windows環境下では問題なかったが、
   Linux環境下になると以下のエラーになってしまう

エラー内容

org.apache.velocity.exception.VelocityException:
Failed to initialize an instance of org.apache.velocity.runtime.log.Log4JLogChute
 with the current runtime configuration.

原因

 * Velocity ではデフォルトでログファイル「velocity.log」を出力する
   windows環境下では、ログファイル出力は問題なかったのだが
   linux環境下では、アクセス権の関係で書き込み許可がなくエラーになってしまった

解決案

色々あるが...
 * ログを無効にする
http://blogs.yahoo.co.jp/dk521123/36245554.html
より抜粋

Velocity.setProperty(VelocityEngine.RUNTIME_LOG_LOGSYSTEM_CLASS, 
    "org.apache.velocity.runtime.log.NullLogSystem");
Velocity.init();

参考文献

無効にするやり方
http://trialpc.net/triple/2008/11/velocity-1.php
無効にする以外にもやり方はある模様
http://java.akjava.com/library/jakarta-velocity/log
公式サイト
http://www.jajakarta.org/velocity/velocity-1.4/docs-ja/developer-guide.html#Configuring the Log System

関連記事

Velocityを利用してメールテンプレート機能の実装を考える [1-2]

http://blogs.yahoo.co.jp/dk521123/36245554.html
http://blogs.yahoo.co.jp/dk521123/36246607.html