1.獲得請求路徑的url,例如url為:
2.首先尋找namespace為/path1/path2/path3的package,
如果存在這個package,則在這個package中尋找名字為test的action,
若找到了該action,則訪問該action,
若沒有找到該action則立即轉向預設表空間[namespase=""]去尋找該action
若在預設表空間中找到了該action,則執行該action
若在預設表空間中沒有找到該action,則執行該錶空間中定義的預設action
若預設表空間中定義了預設action,則執行該action
若預設表空間中沒有定義預設的action,則報404找不到內容的錯誤
如果不存在這個package則轉步驟3;
3.尋找namespace為/path1/path2的package,
如果存在這個package,則在這個package中尋找名字為test的action,
若找到了該action,則訪問該action,
若沒有找到該action則立即轉向預設表空間[namespase=""]去尋找該action
若在預設表空間中找到了該action,則執行該action
若在預設表空間中沒有找到該action,則執行該錶空間中定義的預設action
若預設表空間中定義了預設action,則執行該action
若預設表空間中沒有定義預設的action,則報404找不到內容的錯誤
如果不存在這個package,則轉步驟4;
4.尋找namespace為/path1的package,
如果存在這個package,則在這個package中尋找名字為test的action,
若找到了該action,則訪問該action,
若沒有找到該action則立即轉向預設表空間[namespase=""]去尋找該action
若在預設表空間中找到了該action,則執行該action
若在預設表空間中沒有找到該action,則執行該錶空間中定義的預設action
若預設表空間中定義了預設action,則執行該action
若預設表空間中沒有定義預設的action,則報404找不到內容的錯誤
如果仍然不存在這個package,就去預設的namaspace的package下面去找名字為test的action(預設的命名空間為空字串""),
如果還是找不到,頁面提示找不到action,報404找不到內容的錯誤
另:若沒有定義預設的表空間,則在上述要訪問預設表空間[namespase=""]的位置,就此中斷,直接提示404找不到action
struts2 action 配置方法
struts2 action幾乎完全吸收了xwork 的精華,近日學習struts 2,總結一下action的配製方法。首先看一下com.opensymphony.xwork2.action的介面宣告,action提供execute 方法,子類必須實現execute 方法。public inte c...
struts2 action中result引數詳解
chain 用來處理action鏈 com.opensymphony.xwork2.actionchainresult dispatcher 用來轉向頁面,通常處理jsp org.apache.struts2.dispatcher.servletdispatcherresult freemaker ...
Struts2 Action獲取Scope物件
方式 一 與servlet解耦合的非ioc方式 獲取的scope物件與容器無關,通過actioncontext獲取。loginaction 如下 package com.asm public class loginaction extends actionsupport 省略username的get...