Как сравнить две переменные объекта в языке выражений EL?

Я создаю выпадающий список всех языков. Выбор языка по умолчанию для списка будет определяться с помощью информации, добавленной пользователем:

    ${lang}   ${lang}     

.equals , не существует в EL. Посмотрев здесь, я предложил написать свою собственную функцию, а затем импортировать и использовать ее. Поскольку это одна крошечная вещь только для этой страницы, я не хочу начинать создавать библиотеки и т. Д. Только для этого. Я также не хочу создавать специализированные объекты для сервлета, чтобы вернуться с этой дополнительной информацией в них.

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

Каков наилучший план для быстрого исправления сравнения двух строк в EL?

Учебник J2EE 1.4

В языке Expression вы можете просто использовать оператор == или eq для сравнения значений объектов. За кулисами они фактически будут использовать Object#equals() . Таким образом, так как до текущей версии EL 2.1 вы не можете ссылаться на методы с другими сигнатурами, чем стандартные методы getter (и setter) (в предстоящем EL 2.2 это было бы возможно).

Таким образом, конкретная линия

  

должен быть записан как (обратите внимание, что все выражение находится внутри { и } )

  

или, что эквивалентно

  

Оба они за кулисами грубо интерпретируются как

 jspContext.findAttribute("lang").equals(jspContext.findAttribute("pageLang")) 

Если вы хотите сравнить постоянные значения String , тогда вам нужно процитировать его

  

или, что эквивалентно

  

который за кулисами грубо интерпретируется как

 jspContext.findAttribute("lang").equals("en") 

Не уверен, что я прав, но самым простым способом было бы что-то вроде:

    

Просто скопируйте и вставьте из моего приложения …

НТН

  • Вложенные составные компоненты JSF, приводящие к исключению переполнения стека
  • Как вызвать параметризованный метод из JSP с использованием JSTL / EL
  • Добавление внешних ресурсов (CSS / JavaScript / images и т. Д.) В JSP
  • javax.servlet.ServletException: javax.servlet.jsp.JspTagException: не знаю, как перебирать поставляемые «элементы» в
  • Сделать безопасный оператор $ {} XSS безопасным в Struts 2 (так же, как и гобелен)
  • Где можно загрузить JSTL jar
  • Окончательная версия Java-версии (J2EE, Java EE, Servlet, JSP, JSTL)
  • Не удается найти дескриптор библиотеки тегов для «http://java.sun.com/jsp/jstl/core»
  • Оценить пустые или нулевые tags JSTL c
  • Выбранное значение для JSP с помощью JSTL
  • Список как объект поддержки формы с использованием весны 3 mvc, правильный синтаксис?
  • Давайте будем гением компьютера.