Проверка атрибута существует в JSP

У меня есть некоторые классы, который расширяет суперкласс, и в JSP я хочу показать некоторые атрибуты этих классов. Я только хочу сделать один JSP, но я не знаю заранее, имеет ли объект атрибут или нет. Таким образом, мне нужны выражение JSTL или тег, который проверяет, что объект, который я передаю, имеет этот атрибут (подобный в операторе в JavaScript, но в сервере).

<c:if test="${an expression which checks if myAttribute exists in myObject}">
    <!-- Display this only when myObject has the atttribute "myAttribute" -->
    <!-- Now I can access safely to "myAttribute" -->
    ${myObject.myAttribute}
</C:if>

Как я могу получить это?

Спасибо.

42
задан Javi 26 March 2010 в 10:41
поделиться

2 ответа

Используйте JSTL c:catch.

<c:catch var="exception">${myObject.myAttribute}</c:catch>
<c:if test="${not empty exception}">Attribute not available.</c:if>
59
ответ дан 26 November 2019 в 23:43
поделиться

Вы имеете в виду что-то вроде этого:

<c:if test="${not null myObject.myAttribute}">
   <!-- Now I can access safely to "myAttribute" -->
</C:if>

или другой вариант

<c:if test="${myObject.myAttribute != null}">
   <!-- Now I can access safely to "myAttribute" -->
</C:if>

Если это список, вы можете сделать

<c:if test="#{not empty myObject.myAttribute}">
1
ответ дан 26 November 2019 в 23:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: