没有为名称空间[/]和操作名称映射操作

时间:2015-10-28 10:01:01

标签: java configuration struts2 action-mapping

我刚开始使用Struts2框架。所以我只想创建一个基本程序。

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>

Struts.xml文件的代码:

<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

   <package  name="default" namespace="/"  extends="struts-default"> 

       <action name="gettutorial"  class="com.abhijeet.actions.TutorialAction"  method="execute">
           <result name="success">result.jsp</result>
       </action>     
   </package>

</struts>

动作类代码:

package com.abhijeet.actions;

import com.opensymphony.xwork2.ActionSupport;


public class TutorialAction extends ActionSupport {

    private static final long serialVersionUID = 1L;

    @Override
    public String execute()
    {
      System.out.println("Execute method is called");
      return "success";
    }
}

我的项目结构如下:

enter image description here

当我运行http://localhost:8080/Struts2check/gettutorial.action url时,会显示错误消息:

  

&#34;没有映射名称空间[/]的动作和与上下文路径[/ Struts2check]相关联的动作名称[gettutorial]。 - [未知位置]&#34;。

我无法找到问题,因为它对我来说似乎是正确的。如果我遗失了某些内容或者我是否犯了错误,请告诉我。

1 个答案:

答案 0 :(得分:1)

/WEB-INF/classes配置文件必须放在类路径根目录

因此<div class="col-md-4"> <a class="pray" href="a.com"><img src="images/prayer.jpg" />Submit your prayer request</a> </div> and not just /WEB-INF

其余配置似乎没问题。