异常启动过滤器struts2
Unable to load configuration. - [unknown location]
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:431)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4072)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4726)
at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1284)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1382)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:306)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1389)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1653)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1662)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1642)
at java.lang.Thread.run(Thread.java:619)
Caused by: Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418)
... 15 more
Caused by: Unable to locate parent package [showcase] - [unknown location]
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.getPackageConfig(PackageBasedActionConfigBuilder.java:887)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:536)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:318)
at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:204)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
... 17 more
答案 0 :(得分:2)
发生此问题只是因为您错过了一些struts库文件。请确保所有库文件都包含在构建路径中。
答案 1 :(得分:0)
从错误控制台可以清楚地看到struts2无法加载配置文件,因为管理器无法解析路径。
答案 2 :(得分:0)
我认为你错过了添加struts2 jar ...你可以添加struts2-core-2.1.8.jar然后使用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 在配置文件中。
答案 3 :(得分:0)
我在使用Intellij IDE的Windows中遇到了类似的问题。我正在使用tomcat服务器。我复制了所有的Struts2罐子
jquery.chart.struts2.js
到if ((o.xaxis && o.xaxis.mode === "categories") || (o.yaxis && o.yaxis.mode === "categories")) {
self.require("js/flot/jquery.flot.categories" + self.minSuffix + ".js");
}
文件夹,它可以正常工作。
答案 4 :(得分:0)
异常跟踪意味着您的应用正在尝试查找未在类路径上获取的struts2-core.jar。随之添加库和其他依赖项。如果您已经添加,请确保它在服务器上可用(如果是WEB-INF中的eclipse / lib文件夹,则部署程序集)
如果您正在尝试构建新的Web应用程序,建议您避免手动添加jar,而是使用像apache或gradle这样的构建工具来处理它。 这个过程更加简单和传统。 https://mvnrepository.com/artifact/org.apache.struts/
您也可以尝试使用现成的原型来避免各种启动错误。您可以参考以下链接以供日后使用: https://struts.apache.org/docs/struts-2-maven-archetypes.html
答案 5 :(得分:0)
缺少JAR和重复的JAR是主要原因。我更喜欢对Struts2 MVC应用程序执行以下步骤:
将过滤器标记添加到您的web.xml,将所有URL重定向到StrutsPrepareAndExecuteFilter(这是struts2的最新版本)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
创建必要的视图页
注意:这些是正常研究级别Struts2分配的一般步骤。实际生产代码可能会有所不同。