2012-06-25 50 views
0

我想從LoginAction到jsp頁面使用display-table填充列表「li」。並且該列表應該是可選的。但是當我運行我的jsp時說:「沒有發現顯示」。可能是什麼問題。並且display-table是一個更好的方法來使列表可選和可編輯?或者有沒有其他的轉身?謝謝使用顯示錶在jsp上填充列表元素

LoginAction.java

public class LoginAction extends Action { 
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, 
       HttpServletResponse response) throws Exception 
     { 

      ActionForward nextPage = mapping.findForward("success"); 
        LoginForm in = (LoginForm) form; 

        CaseHistoryData cd =new CaseHistoryData(); 

        List<CaseHistoryData> li = new ArrayList <CaseHistoryData>(); 
        cd.setNo(1); 
        cd.setShortdesciption("NOA Data verified"); 
        li.add(cd); 
        CaseHistoryData cd2 =new CaseHistoryData(); 
        cd2.setNo(2); 
        cd2.setShortdesciption("Count Allowance"); 
        li.add(cd2); 
    } 

CaseHistoryData.java

public class CaseHistoryData extends ActionForm { 
     private int no; 
     private String shortdesciption; 
    setter and getters} 

AdvancedCorrection.jsp

<html:form action="/OnClick" method="post"> 
    <display:table export="true" id="data" 
         name="sessionScope.LoginAction.li" 
         requestURI="/OnClick" pagesize="10" > 
       <display:column property="no" title="No" sortable="true" /> 

      </display:table> 

struts-config.xml中

<form-bean name="AdvancedCorrectionBean" type="us.gov.doc.uspto.patent.palm.advancedcorrection.web.domain.CaseHistoryData"> 
      </form-bean> 

    <action path="/OnClick" type="us.gov.doc.uspto.patent.palm.advancedcorrection.web.action.LoginAction" name="AdvancedCorrectionBean" scope="session" 
      input="/AdvancedCorrectio 

n.jsp" validate="true" > 
     <forward name="success" path="/jsp/AdvancedCorrection.jsp" /> 

     </action> 
+0

我建議你給[dataTables](http://datatables.net/)一試。它具有無盡的功能,並不需要顯示標籤的蹩腳格式。 – anu

+0

這不是Struts2。 – rees

回答

0

您的顯示:表查找sessionScope.LoginAction.li中的列表。但是LoginAction不在會話範圍內(它不在任何範圍內),並且LoginAction中也沒有getLi()方法返回列表,即使有這樣的方法,列表也只是一個局部變量​​方法。

您需要的列表存儲在請求屬性,在​​方法:

request.setAttribute("caseHistoryDataList", li); 

,並在JSP,你需要使用這個請求屬性:

<display:table name="caseHistoryDataList" ...