Evaluate empty or null JSTL c tags
el, jsp, jstl, string
Solution
How can I validate if a String is null or empty using the c tags of JSTL?
You can use the `empty` keyword in a `<c:if>` for this:
<c:if test="${empty var1}">
var1 is empty or null.
</c:if>
<c:if test="${not empty var1}">
var1 is NOT empty or null.
</c:if>
Or the `<c:choose>`:
<c:choose>
<c:when test="${empty var1}">
var1 is empty or null.
</c:when>
<c:otherwise>
var1 is NOT empty or null.
</c:otherwise>
</c:choose>
Or if you don't need to conditionally render a bunch of tags and thus you could only check it inside a tag attribute, then you can use the EL conditional operator `${condition? valueIfTrue : valueIfFalse}`:
<c:out value="${empty var1 ? 'var1 is empty or null' : 'var1 is NOT empty or null'}" />
To learn more about those `${}` things (the Expression Language, which is a separate subject from JSTL), check here.
See also:
- How does EL empty operator work in JSF?
Problem
How can I validate if a `String` is null or empty using the `c` tags of `JSTL`? I have a variable named `var1` and I can display it, but I want to add a comparator to validate it. ``` <c:out value="${var1}" /> ``` I want to validate when it is null or empty (my values are string type).