Zum Inhalt springen

JSP-EL-Notation Vergleichsoperation für Strings


Empfohlene Beiträge

Geschrieben

Hallo, ich habe ein kleines Problem, bzw komme zu keinem Ergebnis:

Ich benötige in einer JSP einen Vergleich eines Strings für eine bedingte Ausgabe von HTML-Zeilen. Dabei ist das Problem, das ein Teil des Vergleiches als Objekt der Expression Language vorliegt. Ein Vergleich mit einem String mit " eq 'string' " funktioniert genausowenig wie mit " == 'string' ". Was mache ich falsch?

Hier der Code (JSP)


<c:if test="${meineParameter.name eq 'jamaika'}"> html </c:if>

bzw
<c:if test="${meineParameter.name == 'jamaika'}"> html </c:if>
meineParameter ist dabei eine Map (java.util.Map) die ich per SpringMVC als Objekt übergebe:

public ModelAndView handleRequest(HttpRequest, HttpResponse)

{

   ModelAndView mav = new ModelAndView("mav");

   Map parameter = new HashMap<String, Object>();

   parameter.put("name", "jamaika");

   mav.add("meineParameter", parameter);


   return mav

}

An anderer Stelle in der JSP bekomme ich mit

<c:out value="${meineParameter.name}"/>

den namen ausgegeben.

Kann mir einer Weiterhelfen?

mfg Jobe

Geschrieben

Ich habe mit dem "."-Operator noch nicht auf Inhalte einer Map mit JSP EL zugegriffen. Aber wenn das eine funktioniert (<c:out ... />), dann sollte das andere eigentlich auch gehen. Du kannst alternativ dazu probieren, über die Notation ${meineParameter['name'] eq 'jamaika'} den Wertvergleich auszuführen. Aus dem Kopf bin ich mir jetzt nicht sicher, ob 'name' wirklich in Hochkommata gestellt wird, denke aber schon.

Schöne Grüße,

Peter

Geschrieben

:upps:upps

Ich muss euch leider mitteilen, das ihr euch umsonst gedanken gemacht habt.

Da die JSP-Seite per ajax-request aufgerufen und in ein div geladen wird ist in diesem Fall natürlich die Map nicht mehr vorhanden! Sie wird nämlich bei der "Mutterseite" gesetzt. Habe mich da wohl gedanklich mit JavaScript-Variablen vertan.

Trotzdem danke für eure Gedanken!

mfg Jobe

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...