The Java EE 5 Tutorial

JSTL Functions

Table 7–8 lists the JSTL functions.

Table 7–8 Functions

Area 

Function 

Tags 

Prefix 

Functions 

Collection length 

length

fn

String manipulation 

toUpperCase, toLowerCase

substring, substringAfter, substringBefore

trim

replace

indexOf, startsWith, endsWith, contains, containsIgnoreCase

split, join

escapeXml

Although the java.util.Collection interface defines a size method, it does not conform to the JavaBeans component design pattern for properties and so cannot be accessed by using the JSP expression language. The length function can be applied to any collection supported by the c:forEach and returns the length of the collection. When applied to a String, it returns the number of characters in the string.

For example, the index.jsp page of the hello1 application introduced in Chapter 3, Getting Started with Web Applications uses the fn:length function and the c:if tag to determine whether to include a response page:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core"
     prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions"
    prefix="fn" %>
<html>
<head><title>Hello</title></head>
...
<input type="text" name="username" size="25">
<p></p>
<input type="submit" value="Submit">
<input type="reset" value="Reset">
</form>

<c:if test="${fn:length(param.username) > 0}" >
  <%@include file="response.jsp" %>
</c:if>
</body>
</html>

The rest of the JSTL functions are concerned with string manipulation: