Web應用啟動時加載並初始化ActionServlet。ActionServlet從struts-config.xml中讀取配置信息,把它們存放到各種配置對象中。當ActionServlet接收到壹個請求時,流程如下:
1.檢索和用戶請求匹配的ActionMapping實例,如果不存在,就返回用戶請求路徑無效的信息。
2.如果ActionForm實例不存在,就創建壹個ActionForm對象,把提交的表單數據保存到ActionForm中。
3.根據配置,決定是否需表單驗證,若需要,則調用ActionForm的validate方法。
4.如果ActionForm的validate方法返回null或返回不包含ActionMessage的ActionErrors對象,則表示驗證成功。
5.ActionServlet根據ActionMapping實例包含的映射信息決定將請求轉發給哪個Action,如果Action不存在則先創建這個實例,然後調用Action的execute方法。
6.Action的execute方法返回壹個ActionForward對象,ActionServlet再把請求轉發給ActionForward對象指向的JSP組件。
7.ActionForward指向的JSP組件生成動態網頁,返回給用戶。