以下是我所做的。1.下载并使用所有jar 2.在WEB-INF中构建web.xml
<!--?xml version="1.0" encoding="UTF-8"?-->
<web-app id="WebApp_ID" version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name>Basic Strust 2 Project setup on Glassfish 3.0.1</display-name>
<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>
</web-app>
然后在WEB-INF中设置struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"/WEB-INF/classes/struts-2.1.7.dtd">
<struts>
<!--
You could also set the constatnts in the struts.properties file
placed in the same directory as struts.xml
-->
<constant name="struts.devMode" value="true" />
<package name="test" extends="struts-default" namespace="/">
<!--
If no class attribute is specified the framework will assume success and
render the result index.jsp
If no name value for the result node is specified the success value is the default
-->
<action name="help">
<result>/help.jsp</result>
</action>
</package>
</struts>
并在根文件夹中构建简单的 help.jsp。
我建立了动作类 help.java
import com.opensymphony.xwork2.ActionSupport;
public class help extends ActionSupport{
@Override
public String execute() throws Exception {
return SUCCESS;
}
}
实际上我认为现在我不需要这个 java 代码。
当我运行它并进入 help.action 时,它只是说 404 找不到,HTTP 状态 404 - 没有为命名空间 [/] 和操作名称 [help] 映射与上下文路径 [/131X] 关联的操作。