Для справки, я наткнулся на этот пост, занимаясь этой проблемой:
Многострочная строка в JSTL добавляется в качестве атрибута заголовка текстовой области. Затем Javascript добавляет это как текст по умолчанию для текстовой области. Чтобы очистить этот текст от фокуса, значение должно совпадать с заголовком ... но не удается, так как многие текстовые редакторы ставят \ r \ n вместо \ n. Таким образом, подписчик избавится от нежелательных \ r:
<% pageContext.setAttribute("newLineChar", "\r"); %>
<c:set var="textAreaDefault" value="${fn:replace(textAreaDefault, newLineChar, '')}" />