私たちのチームは、ベロシティ テンプレートで繰り返し発生する問題に直面しています。レンダリング時に、「Template.merge() の失敗 - Velocity テンプレート '/template.vm' をレンダリングできません」というメッセージとともに RuntimeException をスローするものがあります。問題を再現できず、Web 上のドキュメントはかなり不十分です。この問題は一貫して再現できるわけではありません。同じテンプレートをレンダリングするとエラーが発生することがありますが、それ以外の場合は問題なく表示されます。Template クラスのソース コードもほとんど役に立ちません。前もって感謝します。
編集: Nathan Bubna の回答に基づいて、Velocity バージョン 1.4 を使用していることを明確にする必要があります。
編集:スタックトレースが有益であることが指摘されたので、ここにあります:
2008-09-15 11:07:57,336 エラー速度 - Template.merge() の失敗。ドキュメントが null です。解析エラーが原因である可能性があります。2008-09-15 11:07:57,336 ERROR VelocityResult - Velocity テンプレートをレンダリングできません, '/search/[template-redacted].vm' java.lang.Exception: Template.merge() 失敗。ドキュメントが null です。解析エラーが原因である可能性があります。org.apache.velocity.Template.merge(Template.java:277) で com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.java:91) で com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport) .java:109) で com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:258) で com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:182) で com.opensymphony.xwork.interceptor.