JSTLне поддерживает список <Integer>? - PullRequest
0 голосов
/ 04 января 2011
                            ${test}
                             <c:forEach items=" ${test}" var="sharedType">
                                  ${sharedType}<br/>
                                 <c:if test="${sharedType == 2}" >
                                     <span class="tweet-button"></span>
                                 </c:if>
                                 <c:if test="${sharedType == 1}" >
                                     TEST
                                     <a href="#" class="fbshare-button">Share</a>
                                 </c:if>
                            </c:forEach>

Целочисленный список 1,2,3. На моей странице показано [1,2,3] для $ {test} и "[1" "2" "3" для $ {sharedType} за 3 итерации. Похоже, JSTL думает, что это строка, разделенная запятой, а не списком. Код для создания списка в Java:

List<Integer> test= new ArrayList<Integer>();
            test.add(1);
            test.add(2);
            test.add(3); 

Я боролся с этим некоторое время, кто-нибудь может мне помочь с этим? Благодарю.

1 Ответ

3 голосов
/ 04 января 2011

Только что проверил это в моем приложении и поставил ответ: попробуйте удалить пробел из items=" ${test}".В противном случае вы выполняете эквивалент этого Java-выражения " " + testList.Очевидно, что результат не является списком.

и "[1" "2" "3" для $ {sharedType} за 3 итерации
Скорее всего, была только одна итерацияи вы видите результат вызова test.toString().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...