E.g.Comment puis-je vérifier si un attribut est défini (pas null et pas une chaîne vide) avec jstl?
<c:if test="${post}">
<h3>${post.title}</h3>
</c:if>
E.g.Comment puis-je vérifier si un attribut est défini (pas null et pas une chaîne vide) avec jstl?
<c:if test="${post}">
<h3>${post.title}</h3>
</c:if>
Utilisez le mot-clé vide
<c:if test="${not empty post}">
<h3>${post.title}</h3>
</c:if>
C'est certainement le meilleur moyen. Je crois qu'il vérifie également pour «null». –
Ceci est trompeur. Si l'attribut est une liste, il est défini et vide, ce conditionnel renvoie true. – stepanian
Vous pouvez également utiliser '! au lieu « non »:
<c:if test="${!empty post}">
<h3>${post.title}</h3>
</c:if>
bien que si 'title' n'existe pas (.-à-dire la propriété ne fait pas partie à cette variable/haricot), vous voulez attraper le' javax.el.PropertyNotFoundException', voir la question ' L'attribut de vérification existe dans JSP' sur http://stackoverflow.com/questions/2522562/checking-attribute-exists-in-jsp –
Votre question devrait probablement être reformulée en "vérifier si un attribut est ** réglé **" (non null et pas une chaîne vide) –