一尘不染

使用struts2显示标签

jsp

我正在尝试对从动作类传递的ArrayList使用显示标签。

动作班

public List<AccessLog> getAccessLogList() throws ParseException
    {

        AccessLogManager am = new AccessLogManager(Config.getInstance());
        ArrayList<AccessLog> accessLogList = new ArrayList<AccessLog>();

        accessLogList = am.getAccessLog(userId, actionId, searchStartDate, searchEndDate);
        HttpSession sessAccessLog = req.getSession();
        sessAccessLog.setAttribute("accessLogListSession", accessLogList);
        return accessLogList;
    }

JSP页面

     <display:table id="accessLogList" name="accessLogList" requestURI="SessionLogAction" pagesize="10" defaultsort="1" >
        <display:column property="accessLogId" title="LogId" sortable="true" headerClass="sortable" />
        <display:column property="username" title="Username" sortable="true" headerClass="sortable"/>
        <display:column property="actionName" title="Action" sortable="true" headerClass="sortable"/>
        <display:column property="description" title="Description" sortable="true"  headerClass="sortable"/>
        <display:column property="remark" title="Remark"/>
        <display:column property="timeStamp" title="TimeStamp" sortable="true" headerClass="sortable"/>
    </display:table>

尽管我可以看到HTML的第一页,但所有页面链接(例如2,3等)均无法正常工作。所以我试图在Session中传递arraylist值。但是我再次面临新的错误。

我的问题是 如何使用struts2使页面链接在Display Tag中工作。
我找到了struts1的示例,但没有找到struts2的示例。提前致谢。


阅读 210

收藏
2020-06-08

共1个答案

一尘不染

终于我解决了。

display:table id =“ accessLogList” name =“ accessLogList” requestURI =“
viewLogList.action” pagesize =“ 10” defaultsort =“ 1”>

请使用将映射到特定动作的动作名称。它运作完美。

例如:

<action name="viewLogList" 
                class="test.SessionLogAction">
                <result name="success">/WEB-INF/pages/Log_list.jsp</result>
                <result name="input">/WEB-INF/pages/Log_list.jsp</result>
        </action>
2020-06-08