我刚刚开始使用 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";
}
}
我的项目结构是这样的:
当我运行http://localhost:8080/Struts2check/gettutorial.action url 时,它会显示错误消息:
“没有为命名空间 [/] 映射的操作和与上下文路径 [/Struts2check] 关联的操作名称 [gettutorial]。- [未知位置]”。
我无法找到问题,因为它对我来说似乎是正确的。如果我遗漏了什么或者我做错了什么,请告诉我。