JSTL <c:choose>?

Status
Nicht offen für weitere Antworten.

SnooP

Top Contributor
Moin... - ich werd grad wahnsinnig ;)

Ich will bei der Darstellung eines <select> Ein Element meiner Liste als "Default"-Element verwenden und hab an selected="selected" gedacht für das option-tag.

Kurz gesagt geht's um die Anzeige von Details eines Mitarbeiters, der einer bestimmten Firma angehört... alle möglichen Firmen werden in dieser select-Liste angezeigt und die aktuelle Firma zu der der MA gehört, soll natürlich die standardmäßig ausgewählt sein... - so weit so gut, hab ich gedacht ich mach das mit <c:choose>:

Code:
<select multiple="multiple" name="corp" >
                    <c:forEach var="opt" items="${Corporations.corporations}">
                        <c:out value="${opt.name == corp}" /> 
                        <c:choose>
                            <c:when test="${opt.name == corp} ">
                                <option selected="selected"><c:out value="${opt}" /></option>
                            </c:when>
                            <c:otherwise>
                                <option><c:out value="${opt}" /></option>
                            </c:otherwise>
                        </c:choose>
                    </c:forEach>
                </select>

Also wenn opt.name == corp gilt (er nimmt da implizit equals), soll er die option mit selected ausgeben, sonst nicht. Opt ist eine Corporation die ein entsprechendes Attribut name hat und corp ist das Attribut mit dem String der die aktuelle Corporation beinhaltet des Users... - beide Variablen haben die gewünschten Inhalte und die Ausgabe oben (opt.name == corp) ergibt richtig einmal true und einmal false bei zwei Firmen in der Liste. Aaaber! und das ist das Merkwürdige - er geht in den when-Fall nicht rein, wie man mit nem Debugger eindeutig erkennen kann... - er geht immer ins otherwise!

Was mach ich also falsch - ist das sowieso Grütze? ;) - kann man das besser lösen?
 

SnooP

Top Contributor
Soo... habs leider nicht wirklich auflösen können das Problem - hatte auch irgendwie Probleme mit der Bean die lediglich ne Collection gehalten hat mit sämtlichen Corporations... sprich Corporations.corporations fand er irgendwie nich so gut...

Hab jetzt <html:select> und <options collection="..."> benutzt und die collection direkt als Sessionvariable gespeichert... - damit funktionierte alles prächtig... - aber was mit der EL da los war, keine Ahnung ;) - hat da jemand Erfahrung? - selbst nen <c:when test="true"> hat nämlich nich wirklich gewirkt... - ganz seltsam!
 

Ralf Ueberfuhr

Bekanntes Mitglied
Also == impliziert nicht automatisch equals. Nimm stattdessen

Code:
<c:when test="${opt.name eq corp} ">
  <option selected="selected"><c:out value="${opt}" /></option>
</c:when>
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Listen Ausgabe ohne forEach - JSTL Allgemeines EE 5
S JSTL foreach rückwärts? Allgemeines EE 2
Antoras JSTL Lib Versionschaos Allgemeines EE 2
S JSTL / Spring Webflow Frage Allgemeines EE 2
2 JSTL Tags für eine Bean? Allgemeines EE 4
T Hashtable value per JSTL auslesen Allgemeines EE 3
T logic:iterate durch JSTL ersetzen? Allgemeines EE 6
B JSTL Problem Allgemeines EE 8
byte JSTL EL und Enums Allgemeines EE 2
T Zu blöd für JSTL Allgemeines EE 6
M JSTL und Textausgabe mit Zeilenumbrüchen Allgemeines EE 9
T Geschachtelte JSTL-Tags Allgemeines EE 2
T JSP/JSTL kennt nur ID, soll Inhalte holen Allgemeines EE 3
M JSTL core-Tag if: Wie kann ich boolsche Variable auswerten? Allgemeines EE 3
M JSTL und JSF Allgemeines EE 2
P Value an JSTL mit EL übergeben. Allgemeines EE 2
G JSTL Fehler Allgemeines EE 2
S Methoden in JSTL Allgemeines EE 2
E Eine Art Thread.sleep() in JSTL? Allgemeines EE 4
S JSTL Foreach Allgemeines EE 3
S JSTL c:out Allgemeines EE 2
S JSTL Foreach Allgemeines EE 2
J Buchempfehlung: Servlets, JSP, Struts, JSTL Allgemeines EE 3
R ArrayList, JSTL - Verständnisproblem. Allgemeines EE 8
G JSP & JSTL welche Taglib nochmal? Allgemeines EE 4
T JSTL + Struts (inkl.Hibernate) -> forEach Problem Allgemeines EE 6
R Tomcat4, JSTL und EL Allgemeines EE 2
J Problem mit sql:query [JSTL] Allgemeines EE 6

Ähnliche Java Themen

Neue Themen


Oben