<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<c:set var="some" value="abcdef"/>
${fn:endsWith(some, 'ef')}
returns true
<c:set var="some" value="abcdefef"/>
${fn:endsWith(some, 'ef')}
returns false
It looks like the function endsWith
checks the string from its begining instead of from its end.
If the string from second argument appers in the first argument not only at the its end, then the function returns false.