Wie werden zwei Objektvariablen in der EL-Ausdruckssprache verglichen?

Ich erstelle eine Dropdown-Liste aller Sprachen. Die Auswahl der Standardsprache für die Liste wird anhand der vom Benutzer hinzugefügten Informationen festgelegt:

<select>
    <c:forEach items="${languages}" var="lang">
        <c:choose>
            <c:when test="${lang}.equals(${pageLang})">
                <option value="${lang}" selected>${lang}</option>
            </c:when>
            <c:otherwise>
                <option value="${lang}">${lang}</option>
            </c:otherwise>
        </c:choose>
    </c:forEach>
</select>

.equals scheint in EL nicht zu existieren. Nachdem ich hier nachgesehen habe, wird empfohlen, meine eigene Funktion zu schreiben und diese dann zu importieren und zu verwenden. Da dies nur für diese Seite eine einmalige Kleinigkeit ist, möchte ich nicht damit beginnen müssen, Bibliotheken usw. nur dafür zu erstellen. Ich möchte auch keine speziellen Objekte für das Servlet erstellen, die diese zusätzlichen Informationen enthalten.

Ich kann mir nur vorstellen, das tatsächliche HTML für die gesamte Optionszeile vom Servlet und nicht nur die Sprachzeichenfolge zurückzugeben. Das erscheint mir jedoch hässlich, und ich hoffe, dass es eine elegantere Lösung gibt.

Was ist der beste Plan für eine schnelle Lösung zum Vergleichen von zwei Zeichenfolgen in EL?

Das J2EE 1.4 Tutorial

Antworten auf die Frage(2)

Ihre Antwort auf die Frage