我正在从 struts2-core 2.5.22 -> struts2-core 6、velocity-engine-core 1.7 ->velocity-engine-core 2.3 和velocity-tools 2.0 ->velocity-tools-generic 3.1 升级我的项目 在以前的版本中,我的 toolbox.xml 工作正常(位置 = /WEB-INF/toolbox.xml),升级到新版本后出现此错误:
java.lang.RuntimeException: Could not find any configuration at /WEB-INF/toolbox.xml
org.apache.velocity.tools.ToolManager.configure(ToolManager.java:129)
org.apache.struts2.views.velocity.VelocityManager.initToolbox(VelocityManager.java:376)
org.apache.struts2.views.velocity.VelocityManager.init(VelocityManager.java:197)
org.apache.struts2.views.velocity.result.VelocityResult.doExecute(VelocityResult.java:128)
org.apache.struts2.result.StrutsResultSupport.execute(StrutsResultSupport.java:206)
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:363)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:280)
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:179)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:49)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:99)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
org.apache.struts2.interceptor.FetchMetadataInterceptor.intercept(FetchMetadataInterceptor.java:76)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
org.apache.struts2.interceptor.CoopInterceptor.intercept(CoopInterceptor.java:57)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
org.apache.struts2.interceptor.CoepInterceptor.intercept(CoepInterceptor.java:56)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:251)
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.doIntercept(ConversionErrorInterceptor.java:143)
您可以在此处找到我正在尝试使用的示例
我尝试在 web.xml 中使用默认工具配置
<context-param>
<param-name>org.apache.velocity.tools.loadDefaults</param-name>
<param-value>true</param-value>
</context-param>
任何帮助将不胜感激!
您使用了错误的文件路径
toolbox.xml
。该位置是根据类路径确定的。如果你看default.properties
:
该框架使用了许多可以更改的属性来满足您的需求。要更改任何这些属性,请在
文件中指定属性键和值。属性文件可以位于类路径上的任何位置,但通常可以在default.properties
下找到。/WEB-INF/classes