ActionServlet 控制所有請求FilterDispatcher 過濾器攔截請求,解耦更徹底<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<struts>
<package name="struts2" extends="struts-default">
<action name="login" class="com.struts2.x.action.LoginAction">
<result name="success">main.jsp</result>
</action>
</package>
</struts>
public class LoginAction {
private String username;
private String password;
// getter/setter 省略
public String execute() throws Exception {
return "success";
}
}
login.html:表單提交至 login.actionmain.jsp:Hello! ${requestScope.username} 顯示用戶名文中列出 6 個核心 Jar + 1 個補充 Jar(commons-logging),缺少任一將拋出 ClassNotFoundException。

struts.xml 替代 struts-config.xml,結構更清晰