I have a List variable called services
in my JSP page. I need to add some markup to the page if there's more than 1 element in the list.
What I'd like to do is...
<c:if test="${services.size() gt 1}"> <!-- markup... --> </c:if>
But you can't invoke methods on Java objects in EL (I think this is perhaps the 364823782 time I've regretted that fact). You can only access getters on Java objects by dropping the 'get,' e.g. ${user.name} for a User class that has a getName() method.
What's the right way to evaluate this test?
JSTL - fn:length() Function The fn:length() function returns the string length or the number of items in a collection.
A tag file is a source file that contains a fragment of JSP code that is reusable as a custom tag. Tag files allow you to create custom tags using JSP syntax. Just as a JSP page gets translated into a servlet class and then compiled, a tag file gets translated into a tag handler and then compiled.
JavaServer Pages (JSP) is a complimentary technology to Java Servlet which facilitates the mixing of dynamic and static web contents.
You are looking for fn:length(services)
. Remember to define the fn namespace.
http://download.oracle.com/javaee/5/tutorial/doc/bnalg.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With