JSTL funktion für Stringvergleich einsetzen

tplanitz

Erfahrenes Mitglied
Hallo,
=============
ich fange mir eine evtl. auftretende exception folgendermaßen in meiner JSP ab:
==============
PHP:
<c:catch var="msg">
 <s:update dataSource="${ds}">
           INSERT INTO test_table
           (attribut, attribut_2)
           VALUES
           (?, ?)
           <s:param value="${param.Eins}" />
           <s:param value="${param.Zwei}" />
 </s:update>
</c:catch>
===============================================
Wenn ein Fehler auftritt möchte ich mir einen
Switch aufbauen und die verschiedenen Oracle (ORA-...)
Feheler abfangen und dem user leserlich darstellen.
Leider funktioniert es nicht. Kann mir jemand helfen
was mache ich hier falsch
===============================================
PHP:
<c:choose>
 <c:when test="${not empty msg}">
   <c:set name="msg" value="${msg}" />
      <c:when test="${fn:contains(msg,"ORA-00001")}">
        <c:out value="Bitte Eingabe prüfen das gerät ist schon in der DB" />
       </c:when>

       <c:when test="${fn:contains(msg,"ORA-00002")}">
        <c:out value="Bitte Eingabe prüfen ........" />
       </c:when>

       u.s.w
 <c:otherwise>
 Thank you the device has been successfuly marked as test device.</h4>
 </c:otherwise>
</c:choose>

==================================================
Die IDE (Eclipse) markiert immer die Zeile
<c:when test="${fn:contains(msg,"ORA-00001")}">
und sagt "Atribut """" has no value"
Irgenwie scheint diese Zeile der Knackpunkt zu seine weil der aufruf der funktion
direkt, gibt mir ein TRUE zurück:
PHP:
    	** Device exist already  "ORA-00001"? is ${fn:contains($msg,"ORA-00001")}!! <br>
    	** Please check the device serial number!
Vielen DAnk schon jetzt für einen Tip!
 

Neue Beiträge

Zurück