У меня есть блок переключателей на странице тимилиста, где я показываю изображение в зависимости от оценки репутации пользователя:
<h1>
<span th:text="#{user.reputation} + ${reputation}">Reputation</span>
</h1>
<div th:if="${reputation lt 0}">
<img th:src="@{/css/img/troll.png}"/>
</div>
<div th:if="${reputation} == 0">
<img th:src="@{/css/img/smeagol.jpg}"/>
</div>
<div th:if="${reputation gt 0} and ${reputation le 5}">
<img th:src="@{/css/img/samwise.png}"/>
</div>
<div th:if="${reputation gt 5} and ${reputation le 15}">
<img th:src="@{/css/img/frodo.png}"/>
</div>
<div th:if="${reputation gt 15}">
<img th:src="@{/css/img/gandalf.jpg}"/>
</div>
Это утверждение всегда возвращает смэгол (так что репутация 0), даже если репутацияэтот пользователь 7: пример
РЕДАКТИРОВАТЬ:
Я был не прав, на изображении изображена мошенническая линия:
<!--<img th:src="@{/css/img/smeagol.jpg}"/>-->
но я это закомментировал.Теперь изображение не отображается.
EDIT2:
изменил мои компараторы (см. Исходное сообщение), и теперь я получаю следующую ошибку:
The value of attribute "th:case" associated with an element type "div" must not contain the '<' character.
EDIT3:
Работает сейчас, обновленный исходный пост в рабочий код