發帖次數較少,大牛輕拍。。
------------------------------------------
由於最近在使用struts2,一些應用難免犯渾。進入正題。
大概流程 action(a)----------->產生物件usrr------>a.jsp----------->b.action----------->b.jsp
由於b.jsp還需使用user物件。故產生了想在a.jsp傳遞這個物件到b.action.
主流做法:
1.放在session
2.傳遞某些引數,再去資料庫查詢一遍這個物件。
3.頁面隱藏user物件中的各個屬性。
為什麼不能在a.jsp頁面直接傳遞物件到action呢?
-----------------
操刀入手:
----------
嘗試1:
在a.jsp中寫入
request.setattribute("user");
在b.action中獲取request.setattribute("user");
結果一直是null.
百思不得其解,一直以為是struts2中封裝request的某些原因,或者是***在作祟。。
後來猛然發現:是因為不是同乙個request的關係,和struts2無關。。。
因為這個request 是上次的請求物件,新的請求會重新產生request.
總結一下:
在jsp 頁面上使用settattribute是沒有用的。
即:客戶端發出請求,伺服器端相應完畢後,request即失效了。
剩下的講究基本是response.sendredirect 或者是 forward:
如果用request,要注意request的範圍僅限於同乙個request物件;
如果使用了form的"action"或者response.sendredirect("***.jsp")等調轉,
則不再是同乙個request物件,即用request.getattribute("name")將取不到值。
換成request.getrequestdispatcher("***.jsp").forward(request,response);
才能共享request中資料.
如果採用getparameter的形式,抱歉,只能支援string.
jsp頁面傳遞物件是不是就無解呢?(別告訴我json什麼的封裝物件的屬性值)。
struts2傳遞物件的那些事。。。
發帖次數較少,大牛輕拍。由於最近在使用struts2,一些應用難免犯渾。進入正題。大概流程 action a 產生物件usrr a.jsp b.action b.jsp 由於b.jsp還需使用user物件。故產生了想在a.jsp傳遞這個物件到b.action.主流做法 1.放在session 2.傳...
struts2 引數傳遞問題
struts2的引數傳遞應用3個方法。舉乙個例子,通過頁面ext的呼叫,傳遞引數的時候。action是如何得到引數的。ext.ajax.request 這個是前台ext呼叫struts2的action 後台得到引數有三種方法,一 在action中對這個些引數進行setter getter,然後在呼叫...
struts2值傳遞方法
在jsp中新增 taglib prefix s uri struts tags username br password br 或者 username value username 訪問actoncontext當中的屬性,注意一定要在屬性名前加 br modify value modify 訪問ac...