Как проверить в JSTL, является ли объект String или Collection? - PullRequest
6 голосов
/ 10 августа 2011

Я использую JSTL и хочу проверить, является ли объект строкой или коллекцией.

fn: длина возвращает результаты для обоих типов (размер строки или количество элементов в коллекции).

<c:if test="${fn:length(item)>1}">
   <c:out value="${fn:length(item)} " />
</c:if>

Как я могу определить, какой у меня есть?

Ответы [ 2 ]

8 голосов
/ 23 июля 2015

item.class приводит к ошибкам при использовании с tomcat 7. Для меня это работает (хотя и грязнее):

${item.link.getClass().simpleName == 'String'}
8 голосов
/ 10 августа 2011

Вы можете посмотреть на название класса. Например:

<c:if test="${item.class.simpleName == 'String'}">
   <!-- it's a String! -->
</c:if>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...