Старая тема, но я публикую это для всех, кто ищет ответ.Ниже, как я справился с этим.Код был внутри цикла, создающего элементы td, отсюда и ссылка на столбцы.Если текст требует усечения, я отрегулировал подстроку, позволяющую место для многоточия, а затем добавил многоточие.
<c:if test="${columnMaxLength ge 0}">
<c:set value="" var="ellipsis" />
<c:if test="${fn:length(colTxt) gt columnMaxLength}">
<c:set value="..." var="ellipsis" />
</c:if>
<c:set value="${fn:substring(colTxt, 0, (columnMaxLength - fn:length(ellipsis)))}${ellipsis}" var="colTxt" />
</c:if>
<c:out value="${colTxt}" />