我想在頁面加載的JSP頁面名稱EnergyConsumptionAnalysis
中從ActionSupport
迭代請求屬性,以使用相同的JSP頁面在使用struts2的瀏覽器上顯示它,但是在運行時我得到空的顯示。任何人都可以告訴我我在做什麼錯?如何迭代struts 2中的請求屬性?
JSP:
<s:action name = "FetchSite"></s:action>
<s:iterator value="siteData">
<s:property value = "name"/>
</s:iterator>
行動支持:
public class EnergyAction extends ActionSupport implements ServletRequestAware
{
private HttpServletRequest request;
@Override
public String execute()
throws Exception {
//Get the site Data
EnergyAnalysisBusinessHandler handler = new EnergyAnalysisBusinessHandler();
//setting attribute as arraylist type
request.setAttribute("siteData", handler.getSiteData());
return SUCCESS;
}
public void setServletRequest(HttpServletRequest request){
this.request = request;
}
public HttpServletRequest getServletRequest(){
return request;
}
的struts.xml:
<action name = "FetchSite" class = "com.javaworld.email.EnergyAction">
<result name = "success">jsp/EnergyConsumptionAnalysis.jsp
</result>
</action>
我不知道爲什麼你想,當u有更好的選擇,通過使用簡單的getter和setter的使用值棧與請求對象玩。我將與'Vasily Komarov'一起消化 –
我是struts新手,我不知道它。感謝您的建議。 – Stardust
@Stardust要小心一件事值棧擴大範圍,你的參數也可以在重定向中使用,通常的重定向行爲將忽略初始請求中設置的任何參數,所以如果你真的需要這樣的話,請檢查你的用例 – mprabhat