簡體   English   中英

無法從servlet到jsp獲取對象

[英]Can't get the object from servlet to jsp

我是JavaEE的初學者。 我做了一個簡單的示例,將對象從servlet發送到jsp。 在jsp中,我想在網站頁面上顯示這些對象的價目表。 我使用$ {}來獲取對象,但是它不起作用。 有人可以幫我嗎? 我的test.java和test.jsp代碼是:test.java:

public class Test extends HttpServlet {
public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException{
    /* Création et initialisation du message. */
    String paramAuteur = request.getParameter( "auteur" );
    String message = "Transmission de variables : OK ! " + paramAuteur;

    /* Création du bean et initialisation de ses propriétés */
    Coyote premierBean = new Coyote();
    premierBean.setNom( "Coyote" );
    premierBean.setPrenom( "Wile E." );

    /* Création de la liste et insertion de quatre éléments */
    List<Integer> premiereListe = new ArrayList<Integer>();
    premiereListe.add( 27 );
    premiereListe.add( 12 );
    premiereListe.add( 138 );
    premiereListe.add( 6 );

    /* Stockage du message, du bean et de la liste dans l'objet request */
    request.setAttribute( "test", message );
    request.setAttribute( "coyote", premierBean );
    request.setAttribute( "liste", premiereListe );

    /* Transmission de la paire d'objets request/response à notre JSP */
    this.getServletContext().getRequestDispatcher( "/WebContent/test.jsp" ).forward( request, response );
}

}

jsp文件:

    <p>Ceci est une page générée depuis une JSP.</p>
    <p>
        ${test}
        ${param.auteur}
    </p>
    <p>
        Récupération du bean :
        ${requestScope.coyote.prenom}
        ${requestScope.coyote.nom}
    </p>
    <p>
        Récupération de la liste :
        <%
        ArrayList<Integer> list = (ArrayList) request.getAttribute("liste");
        for (Integer lis: list) {   
           %>
             <%=lis%>
           <%}
        %>
    </p>

謝謝,

您可以執行以下操作:

<p>
  <%
   ArrayList<Integer> lists = (ArrayList<Integer>) request.getAttribute("liste");
   for (Integer list: lists) {   
   %>
     <%=list%>
   <%}%>
</p>

使用EL,您可以執行以下操作:

<p>
  <c:forEach items="${liste}" var="list">
   ${list}
  </c:forEach>
</p>

從這里嘗試答案- 如何在JSP中訪問請求屬性? -您的請求屬性應該在JSP中可見。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM