struts.xml<struts>
<package name="struts2" extends="struts-default">
<action name="HelloWorld" class="com.test.action.HelloWorld">
<result name="success">
/index.jsp
</result>
</action>
</package>
</struts>web.xml  <filter>
   <filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  
  </filter>
  
  <filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>action只返回了一个 "success"
以下是错误信息。There is no Action mapped for action name Strust/. - [unknown location]
at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:189)
at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:594)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675)
at java.lang.Thread.run(Thread.java:619)

解决方案 »

  1.   

    导致问题很多
    1.struts.xml是否放在src根目录下
    2.struts的jar包是否齐全
      

  2.   

    还有就是
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    是否是当前struts版本的类
      

  3.   

    没有找到匹配的Action,查配置文件与表单信息
      

  4.   

    你的表单form action="HelloWorld.do?"...是这样的嘛?
     class="com.test.action.HelloWorld" 是否跟你的项目路径匹配?
      

  5.   

    There is no Action mapped for action name Strust/. - [unknown location]请看报错信息,你肯定是哪里要写struts,但是写成了Strust。如果找不到,你就ctrl+h查找吧
      

  6.   

    HelloWorld的路径是com.test.action.HelloWorld吗?
    jar包至少要加commons-fileupload, commons-io, freeer, javassist, ognl, struts2-core, xwork-core这7个
    在页面是怎么调用的?调用的action是不是写成Strust了?
      

  7.   

    There is no Action mapped for action name Strust
     这说明了你在页面上的表单action属性是<form action="Strust.do...>,你把这个Strust.do改成HelloWorld.do就行了
      

  8.   

    <form action="HelloWorld">
    </form
      

  9.   

    从LZ的错误中发现LZ可能是打错字了Strust/???我觉得LZ应该是想打成Struts/吧???
      

  10.   

    还有package里面没有配置namespace
      

  11.   

    路径错了,找不到相应的action 
    参照7楼的试一下
      

  12.   

    There is no Action mapped for action name Strust/. - [unknown location]strust ???????
      

  13.   

    上一个strust的错误是我脑残了,输入网址的时候手误。真正的错误不是那个xml文件的路径问题之前因为百度到,所以特意检查了一下,没问题。引入的包commons-fileupload-1.2.2
    commons-logging-1.1.1
    freeer-2.3.16
    ognl-3.0.1
    struts2-core-2.2.3.1
    xwork-core-2.2.3.1
    commons-io-2.0.1
    commons-lang-2.5
    javassist-3.11.0.ganamespace因为只有一个action ,所以没配,听说有默认吧。但是看到你们的建议,我也加了。 用过“/”也用过“/test” 还是有异常。<package name="struts2" extends="struts-default" namespace="/test">http://localhost:8080/Struts/helloworld.action
    http://localhost:8080/Struts/test/helloworld.action
    纠结啊 两个早上了
      

  14.   

    Struts应该是你项目名称,对吧。
    那么helloworld貌似就是你的action请求方法对吧,与struts.xml的action配置没对应上<struts>
        <package name="struts2" extends="struts-default">
            <action name="HelloWorld" class="com.test.action.HelloWorld">
                <result name="success">
                    /index.jsp
                </result>
            </action>
        </package>
    </struts>action标签中的name为【HelloWorld】,所以你的请求helloworld同样要大写首字母
      

  15.   

    你要么把 form的 action中的Struts.do 搞成Helloworld ,
    要么修改 struts.xml中
     <action name="HelloWorld" class="com.test.action.HelloWorld">的name为 Strutsform的action name 和你struts.xml中配置的action name不一致
      

  16.   

    action 中的 name 与请求的URL的name不匹配。一个大写一个小写,纠结。
      

  17.   

    "HelloWorld.action" 这次我是ctrl c 过去的
    还是有异常
    There is no Action mapped for action name HelloWorld. - [unknown location]
    跟着视频里的方法做的啊  没道理啊
      

  18.   

     <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>      把这个该为<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
      

  19.   


    不是说filterDispatcher已经弃用了么。改成StrutsPrepareAndExecuteFilter这个了啊
      

  20.   

     <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>/*</url-pattern>
      </filter-mapping>
    为什么都喜欢用(/*)这个拦截请求啊,用(*.action
    我看有一个介绍好像说这个 /* 容易出错吧,为什么要拦截所有的请求。。
      

  21.   


    也改了,依旧是报哪个异常There is no Action mapped for action name HelloWorld. 
    按照视频又重新弄了一回。问题依旧在。视频是北京圣思园张龙的那个 
      

  22.   

    There is no Action mapped for action name Strust/. - [unknown location]
      

  23.   

    路径问题?
    <form action="HelloWorld">
    </form>
      

  24.   

    肯定是 单词写错了。 不然就是配置文件没在src下面找不到。
      

  25.   

    路径错误,可能是jar包冲突,加上namespace="/"试试。
      

  26.   

    页面地址helloworld.action一定要与struts.xml中配置文件的action name名字一致。
      

  27.   

    弱弱的问一下
    你的action中的方法名是excute()么?
    要是不是的话 你的struts.xml中应该配置method=“方法名”;
      

  28.   

     那个方法名教 ‘execute’吧 应该是没有错误的
    <action name="go" class="com.test.action.ActionGo">
    <result name="success">
    /index.jsp
    </result>
    </action>为了不让大小写影响  我新加了一个 go 还是提示找不到action
      

  29.   

    提示no Action mapped for action name Strust/. - [unknown location]action 名字映射问题,所以你检查下表单或者说是请求链接中的action名字是不是和struts.xml中的action name="XXXX"名字一致。
      

  30.   

    纠结了这么久之后,发现问题的所在了。 struts.xml的文件名写错啦。 我第一个字母大写了。写成了Struts.xml。
    谢谢楼上各位的帮助