Apache Tomcat/7.0.16以前用的myeclipse 9.0 X64  现在用的8.6 32位 两个项目都是如此!以前都好好的怎么搞?严重: Exception starting filter Struts2
Unable to load configuration. - action - file:/H:/apache-tomcat-7.0.16/webapps/DomainQuery/WEB-INF/classes/struts.xml:7:72
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:431)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
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:4584)
at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5262)
at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5257)
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. - action - file:/H:/apache-tomcat-7.0.16/webapps/DomainQuery/WEB-INF/classes/struts.xml:7:72
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)
... 14 more
Caused by: Action class [querysaction] not found - action - file:/H:/apache-tomcat-7.0.16/webapps/DomainQuery/WEB-INF/classes/struts.xml:7:72
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyAction(XmlConfigurationProvider.java:409)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:354)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:468)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
... 16 more

struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
    "http://struts.apache.org/dtds/struts-2.1.7.dtd"><struts>
<!-- <constant name="struts.action.extension" value="action,jsp"></constant> -->
<!--国际化配置 <constant name="struts.custom.i18n.resources" value="smars"></constant> --> <!-- 后台 -->
<package name="admin" namespace="/admin" extends="struts-default">

<action name="commodity_management" class="commodityAction"
method="CommodityQueryAction">
<result>commodity_management.jsp</result>
<result name="input">commodity_management.jsp</result>
</action>
<action name="commodity_recover" class="commodityAction"
method="CommodityRecoverAction">
<result>commodity_recover.jsp</result>
<result name="input">commodity_recover.jsp</result>
</action>
<action name="commodity_update" class="commodityAction"
method="CommodityUpdateAction">
<result>commodity_management.jsp</result>
<result name="input">commodity_management.jsp</result>
</action>

<action name="commodity_delete" class="commodityAction"
method="CommodityDeleteAction">
<result>commodity_management.jsp</result>
<result name="input">commodity_management.jsp</result>
</action>
</package></struts>

解决方案 »

  1.   


    启动报的是无法读取struts.xml,其中的 【querysaction】 找不到。你给的struts.xml并没有配置。清理下tomcat的work以及相关缓存试试,有可能是缓存问题。
      

  2.   

    另外确认下你的Apache Tomcat/7.0.16启动是你部署的当前项目,而不是以前残留的项目。
      

  3.   

    那不告诉你xml:7:72了吗。。
    “action,jsp”应该是“action.jsp”不是","
      

  4.   

    <!-- <constant name="struts.action.extension" value="action,jsp"></constant> -->注视了,况且这个不是你理解的那个意思!!
      

  5.   

    Caused by: Action class [querysaction] not found 有querysaction这个类么 ?
    类第一个字母最好是用大写吧
      

  6.   

    <constant name="struts.action.extension" value="action,jsp" /> 这个是对的 人家是想拦截 .action 和.jsp的action ;