Самое близкое, что вы можете получить, это проверить имя файла cookie в заголовке запроса cookie
.
<c:if test="${fn:contains(header.cookie, 'persist=')}">
Однако, когда есть другой файл cookie с именем foopersist
, он не работает.
Если ваш контейнер поддерживает EL 2.2 (все контейнеры Servlet 3.0, такие как Tomcat 7, Glassfish 3 и т. Д.), То вы можете просто использовать Map#containsKey()
.
<c:if test="${cookie.containsKey('persist')}">
Если ваш нетЛучшее, что вы можете сделать, - это создать функцию EL (более конкретный пример объявления можно найти где-то в нижней части этого ответа ):
<c:if test="${util:mapContainsKey(cookie, 'persist')}">
с
public static boolean mapContainsKey(Map<String, Object> map, String key) {
return map.containsKey(key);
}