ubuntu12.04 Struts2 配置过程中出现的错误
1 The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter.
在web.xml中配置的struts2过滤器中
org.apache.struts2.dispatcher.FilterDispatcher
/*.action
注意红色部分,这样写的话,只会访问后缀为.action的文件,所以要想添加jsp访问的话,要不然多加一个过滤器映射,要不然就改成/*
2Exception starting filter struts2
Unable to load configuration. - bean - jar:file:/E:/tomcat-7.0.11/webapps/struts/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:437)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:195)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:273)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:254)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:372)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4542)
at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5220)
at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5215)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: Unable to load configuration. - bean - jar:file:/E:/tomcat-7.0.11/webapps/struts/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:380)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:424)
... 13 more
Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/E:/tomcat-7.0.11/webapps/struts/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:232)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:180)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 15 more
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/E:/tomcat-7.0.11/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72 - bean - jar:file:/E:/tomcat-7.0.11/webapps/struts/WEB-INF/lib/struts2-core-2.2.3.jar!/struts-default.xml:29:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:216)
... 18 more
2011-6-10 13:15:53 org.apache.catalina.core.StandardContext startInternal
严重: Error filterStart
这个是包冲突而产生的,说明有2个同样的包 struts2-core-2.2.3.jar,删除一个就ok
3./catalina.sh: 1: eval: /opt/jdk1.7.0.51/jre/bin/java: not found 在关闭tomcat的时候报这个错。
需要在tomcat7/bin/catalina.sh 中指定jre和javahome的路径 JAVA_HOME=/opt/jdk1.7.0.51,JRE_HOME=/opt/jdk1.7.0.51/jre
4The scratchDir you specified: /usr/local/apache-tomcat-6.0.14/work/Catalina/错误
解决方案:只需将复制过来的tomcat文件夹下的work文件夹删除即可
5myclipse 中tomcat的配置:
在Preference->Myeclipse->Server->Tomcat->Tomcat 7.x 指定tomcat的路径 /usr/share/tomcat7
在Preference->Myeclipse->Server->Tomcat->Tomcat 7.x->JDK 指定jdk存放的完整路径
系统默认有一个路径,是sun的openjdk
在Preference->Myeclipse->Server->Tomcat->Tomcat 7.x->Paths
add JAR/ZIP ->/usr/share/tomcat7/bin/tomcat-juli.jar 选择这个文件
以上只是个人配置struts2的过程中碰到的问题