Извините, я знаю, что это похоже на другие вопросы, но я все еще не могу найти решение.
У меня LinkedHashMap<Long,ExperimentMetadata> metadata
установлено в качестве атрибута сеанса. (ExperimentMetadata - это javabean.) Я хочу получить атрибут от конкретного компонента, ключ которого является параметром metadata_key. Но когда я пытаюсь получить это напрямую, например,
<c:out value="${metadata[param.metadata_key].name}" />
, результат будет пустым.
Однако, когда я перебираю всю карту, она работает нормально, например
<c:forEach items="${metadata}" var="exp">
<c:if test="${exp.key eq param.metadata_key}">
<c:out value="${exp.value.name}" />
</c:if>
</c:forEach>
Что я могу сделать, но это отчасти побеждает цель использования hashmap. Это также работает, если я, например,
<c:out value="${metadata[1].name}" />
Может кто-нибудь помочь подсказать, в чем проблема и как ее исправить? Thankyou!