jstl foreach ответом на запрос является ArrayList, но $ {} является строкой - PullRequest
0 голосов
/ 06 октября 2018

listCurrencies считает, что это строка в коде jsp, но атрибут запроса имеет ее как тип ArrayList ... поэтому foreach не работает.Справка!

Метод сервлета

protected void listCurrency(HttpServletRequest request, HttpServletResponse response) 
       throws ServletException, IOException {
    currencies = new Currencies();
    ArrayList<String> c = (ArrayList<String>) currencies.getCurrencyList();
    request.setAttribute("listCurrencies", c);

    RequestDispatcher dispatcher = request.getRequestDispatcher("/BrokerIndex.jsp");
    dispatcher.include(request, response); 
}

Код JSP

 <form action="brokerServlet" method = "Post">
<select name="currency">
    <c:forEach items="${listCurrencies}" var="cur">
        <option value="${cur}"                                        
            <c:if test="${cur eq selectedCurId}">Currency</c:if>
                            >
                        ${cur} </option>
                        </c:forEach>
     </select>
     <input type="submit" value="Submit" />

...