java - 显示列表的内容

标签 java jsp jsf richfaces jstl

这段 jSTL 代码有什么问题吗?我看不到它的内容。

我的accueil.jsp页面的内容

<table>
       <tr>
           <th><c:out value="Numéro de compte"/></th>
           <th><c:out value="Date création"/></th>
           <th><c:out value="Date mise-à-jour"/></th>
           <th><c:out value="Libelle"/></th>
           <th><c:out value="Type devise"/></th>
           <th><c:out value="Situation compte"/></th>        
       </tr>

       <c:forEach items="${ sessionScope.listCpts }" var="liste">
           <tr>
                <td><a href="<c:url value="/menu"/>">${ liste.value.rib }</a></td>
                <td>${ liste.value.dateCréation }</td>
                <td>${ liste.value.dateMaj }</td>
                <td>${ liste.value.libelle }</td>
                <td>${ liste.value.typeDevise }</td>
                <td>${ liste.value.situationCompte }</td>
           </tr> 
       </c:forEach>
</table>

我的 doPost 方法

public static final String ATT_LIST_CPT       = "listCpts";
public void doPost( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException {
        ConnexionForm form = new ConnexionForm();

        User user = form.connecterUser( request );

        ServiceService service = new ServiceService();
        tn.bh.services.client.Service srvc = service.getServicePort();
        List<Compte> listCpts = srvc.consulterListeCpt(user.getIdentifiant());

        HttpSession session = request.getSession();

        request.setAttribute( ATT_LIST_CPT, listCpts );
        request.setAttribute( ATT_FORM, form );
        request.setAttribute( ATT_USER, user );

        if ( form.getErreurs().isEmpty() ) {
            session.setAttribute( ATT_SESSION_USER, user );
            response.sendRedirect( request.getContextPath() + "/accueil" );
        } else {
            session.setAttribute( ATT_SESSION_USER, null );
            this.getServletContext().getRequestDispatcher( VUE ).forward( request, response );
        }

}

这就是我生成的 html 页面。 请注意,我的列表 (listCpts) 已满。

enter image description here

最佳答案

您将数据存储在请求范围内,然后调用 request.sendRedirect(),因此它将从客户端生成新请求,这将丢失数据

将数据放入 session 范围

    session.setAttribute( ATT_LIST_CPT, listCpts );

或者只是转发请求而不是重定向

然后更改

${ sessionScope.listCpts }

${listCpts}

关于java - 显示列表的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17664251/

相关文章:

java - Elasticsearch从1升级到5 - SearchRequestBuilder.setNoFields

java - 无法通过 com.sun.lwuit.image.createimage 从 vector 对象创建图像

java - Base64 到 ImageIO

javascript - JSP 聊天 - 如何将 HTML 中的值解析为 JSP 页面?

java - 无法从 SelectOneMenu 中选择任何项目

Java日期将字符串转换回日期

java - 我怎样才能淡入 JPanel 和 child ?

java - org.apache.http.client.ClientProtocolException异常

javascript - 如何使用 spring mvc 在 jquery ajax 调用中重定向到 View

java - 在另一个页面中打印 bean 数据 (RequestScope)