Хобрук: Ваш путь к мастерству в программировании

Язык выражений получает доступ к значению карты по ключу

Я повторяю список с именем listEvents (типа List<String>) в JSP, используя тег <c:forEach>. Внутри цикла for мне нужно отобразить значение из HashMap<String,String>. Ключом для хэш-карты будет элемент в списке. Пожалуйста, найдите ниже фрагмент кода.

<c:forEach items="${listEvents}" var="listEvent" varStatus="eventCount">
     <c:out value="${eventMap[listEvent]}</
</c:forEach> 

Когда я пытаюсь использовать приведенный выше код, я получаю

PropertyNotFoundException [свойство «Ключ» не найдено в java.lang.String].

Как я могу это исправить?

29.03.2013

  • Похоже, что eventMap — это String, а не Map. Покажите нам, как эта карта создается и добавляется в качестве атрибута. 29.03.2013
  • Спасибо.. Я передаю карту как ‹%@attribute› в jsp. По умолчанию атрибут принимает тип String в качестве входных данных. Поскольку я передаю HashMap, мне нужно явно указать тип java.util.HashMap. 01.04.2013

Ответы:


1

Это правильный способ сделать это:

         <c:forEach var="listEvent" items="${eventMap}" varStatus="eventCount">
                ${listEvent.value}
         </c:forEach>

Чтобы получить доступ к ключу, добавьте эту строку:

         ${listEvent.key}
29.03.2013
Новые материалы

Введение в контекст React
В этом посте мы поговорим о Context API, который был представлен в React 16, и о том, как вы можете их использовать. Что такое контекст? Глядя на определение из react docs , оно..

Шлюз с лицензией OSS, совместимый с Apollo Federation v2, появится в WunderGraph
Сегодня мы рады сообщить, что мы сотрудничаем с поддерживаемой YC Tailor Technologies, Inc. для внедрения Apollo Federation v2. Реализация будет лицензирована MIT (Engine) и Apache 2.0..

Это оно
Ну, я официально уволился с работы! На этой неделе я буду лихорадочно выполнять последние требования Думающего , чтобы я мог сосредоточиться на поиске работы. Что именно это значит?..

7 полезных библиотек JavaScript, которые вы должны использовать в своем следующем проекте
Усильте свою разработку JavaScript Есть поговорка «Не нужно изобретать велосипед». Библиотеки — лучший тому пример. Это поможет вам написать сложные и трудоемкие функции простым способом...

Базовое руководство по переносу концепций обучения в глубокое обучение
Обзор По мере того, как машинное обучение становится все более мощным и продвинутым, модели, обеспечивающие эту расширенную возможность, становятся все больше и начинают требовать огромного..

C в C.R.U.D с использованием React-Redux
Если вы использовали React, возможно, вы знакомы с головной болью, связанной с обратным потоком данных. Передача состояния реквизитам от родительских компонентов к дочерним компонентам может..

5 обязательных элементов современного инструмента конвейера данных
В цифровом мире предприятия используют конвейеры данных для перемещения, преобразования и хранения огромных объемов данных. Эти конвейеры составляют основу бизнес-аналитики и играют..