Bei der Verwendung von JSTL forEach das array druckt den String.toString() und nicht von der tatsächlichen string-Wert

Ich habe den folgenden code:

String[] columnHeaders = {"Banana", "Apple", "Carrot", "Orange", "Lychee", "Permisson"};

<c:forEach var="header" items="<%= columnHeaders%>">
    <td>
        <c:out value="${header}" />
    </td>
</c:forEach>

Wenn die JSP ausgeführt wird, werden folgende Werte ausgedruckt:

org.apache.commons.el.ImplicitObjects$7@6ac86ac8 
org.apache.commons.el.ImplicitObjects$7@6ac86ac8 
...

Erscheint es mir, dass die Speicher-Wert gedruckt wird und nicht der Wert, die in jedem string.
Was vermisse ich hier?

  • Verwenden Sie nicht header als var name
  • Es scheint, dass die kurze und schnelle Antwort war nicht zu verwenden header als die var-Namen, sobald ich das geändert, und trotzdem hielt mein Alter code funktionierte es. Danke!
InformationsquelleAutor Ruepen | 2011-12-19
Schreibe einen Kommentar