Я бы сделал это прямо в атрибуте value
с помощью условного оператора ?:
.
<c:set var="liclass" value="${rowStatus.first ? 'first' : ''}" />
<c:set var="liclass" value="${liclass}${rowStatus.last ? ' last' : ''}" />
Для не очень красивой части <li>
я бы просто добавил
<c:set var="liclass" value="${empty liclass ? 'none' : liclass}" />
и do
<li class="${liclass}">
Правда, это добавляет, казалось бы, ничего не стоящее class="none"
для не первых / последних элементов, но кого это волнует?
Что касаетсяконкретный вопрос, вы можете обрезать пробелы, оставленные тегами, установив атрибут trimDirectiveWhitespaces
для @page
в true
.
<%@page trimDirectiveWhitespaces="true" %>
(работает только в контейнерах Servlet 2.5 / JSP 2.1)
Вы также можете настроить его на уровне servletcontainer.Поскольку неясно, какой из них вы используете, вот только пример Apache Tomcat: в записи сервлета JSP в Tomcat/conf/web.xml
добавьте / измените следующий параметр инициализации:
<init-param>
<param-name>trimSpaces</param-name>
<param-value>true</param-value>
</init-param>
В любом случае, я не могуне говорите с головы до головы и не гарантируйте, что это приведет к желаемому эффекту в конечном итоге с first last
.Вы должны попробовать сами.