Я создаю раскрывающийся список всех языков. Выбор языка по умолчанию для списка будет определяться с помощью информации, добавленной пользователем:
<select>
<c:forEach items="${languages}" var="lang">
<c:choose>
<c:when test="${lang}.equals(${pageLang})">
<option value="${lang}" selected>${lang}</option>
</c:when>
<c:otherwise>
<option value="${lang}">${lang}</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
.equals
, как представляется, не существует в EL. Взглянув сюда, я предложил написать свою собственную функцию, а затем импортировать и использовать ее. Поскольку это одна крошечная вещь только для этой страницы, я не хочу начинать создавать библиотеки и т.д. Только для этого. Я также не хочу создавать специализированные объекты для сервлета, чтобы вернуться с этой дополнительной информацией в них.
Единственное, что я могу сделать, это вернуть фактический html для всей строки опций из сервлета, а не только строки языка, но это наводит меня на уродство, поэтому я надеюсь, что там будет более элегантное решение.
Каков наилучший план быстрого исправления для сравнения двух строк в EL?