Apache Struts 2 Documentation > Home > FAQs > I'm trying to run the example in the tutorial on Tomcat, and it can't instantiate the VelocityEngine |
javax.servlet.ServletException: Servlet.init() for servlet webwork threw exception at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:963)
...
root cause
java.lang.RuntimeException: Unable to instantiate VelocityEngine\!
at
com.opensymphony.webwork.views.velocity.VelocityManager.newVelocityEngine(VelocityManager.java:333)
at
com.opensymphony.webwork.views.velocity.VelocityManager.init(VelocityManager.java:146)
at
com.opensymphony.webwork.dispatcher.ServletDispatcher.init(ServletDispatcher.java:177)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:935)
(Thanks to Keith Lea!)
It turns out Velocity's Avalon logging system was trying to write to my Tomcat folder.
So that it's on file somewhere for other people, I will describe the solution:
runtime.log.logsystem.class=org.apache.velocity.runtime.log.NullLogSystem
This stops Velocity from logging, and the example application now works.