<c:set var="nameLookup" value="${names}" />
<c:forEach var="result" items="${results}">
<tr>
<td>${result.uglyDisplayName}</td>
<td>${result.phonenum}</td>
</tr>
</c:forEach>
Это выдержка из jsp, которую я пытаюсь отредактировать.
Результатами является List<Object>
, возвращаемое в ModelAndView из контроллера, каждый из которых Object
имеет getUglyDisplayName
и getPhonenum
. Я не совсем понимаю, как это работает. Я предполагаю, что JSP делает некоторые getClass().getName()
или что-то за кадром? Любые указатели на этот процесс будут поучительными. Во всяком случае, эта часть работает.
В контроллере я добавил еще один объект, который будет возвращен в ModelAndView. Это HashMap с более хорошими отображаемыми именами, для которых уродливые отображаемые имена являются ключами. Поэтому я хочу заменить этот первый тд на что-то вроде этого:
<td>${nameLookup.get(result.uglyDisplayName)}</td>
Это не работает, очевидно, иначе я бы не стал публиковать здесь. Я пошел дальше и установил переменную для имени, которое я поместил в HashMap в ModelAndView (верхняя строка), но я не уверен, что это правильный способ получить этот объект.