2009-06-15 19 views
5

Bu JSP kod snippet'ım var:JSTL etiketi ile EL kaçış Karakter nasıl?

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 

<c:choose> 
    <c:when test="${var1.properties[\"Item Type\"] eq \"Animal's Part\"}"> 
    <c:set var="cssClassName" value="animalpart" /> 
    </c:when> 
    <c:otherwise> 
    <c:set var="cssClassName" value="" /> 
    </c:otherwise> 
</c:choose> 

JSP sunucu tarafından derlenemiyor. Bununla birlikte, "Hayvanın Parçası" ndan "'" karakterini kaldırırsam, karşılaştırılabilirdir. "\" Karakterini kullanarak kaçmayı denedim ama yine de hata veriyor.

Herhangi bir öneri/yardım takdir edilmektedir. Mümkünse senaryo uygulamasını kullanmaktan kaçınmaya çalıştım.

Teşekkürler.

EDIT: Çalışmayı (StackOverflow'a gönderdikten sonra) elde etmeyi başardım, bu sorudaki çözümlerden biri olarak gönderildi. Daha önce (Vincent ve Eddie tarafından) yayınlanan başka bir çözümü denedim, ancak ne yazık ki, çevremde hiçbiri işe yaramıyor, ancak cevaplar ortamında çalışabileceklerini düşünüyorum. Teşekkürler.

+0

Hangi ortamlarda Eddie'nin/Vincent'ın çözümü işe yaramadı? – hop

cevap

3

:

<c:out value="${formulario}" escapeXml="false" /> 
+0

** item_animalpart ** ve ** item_treepart ** gereksiz tanımlardır – gavenkoa

6

Örneğin bu

<c:when test='${var1.properties["Item Type"] eq "Animal\'s Part"}'> 
0

Kullanım escapeXML = "false" deneyin: Bu çalışır çözümdür

<c:when test="${var1.properties['Item Type'] eq 'Animal\'s Part'}"> 

<c:when test='${var1.properties["Item Type"] eq "Animal\'s Part"}'> 
3

İki kolay seçenek var kullanım durumum:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 

<c:set var="itemType"  value="${var1.properties[\"Item Type\"]}" /> 
<c:set var="item_animalpart" value="Animal's Part" /> 
<c:set var="item_treepart" value="Tree's Part" /> 

<c:choose> 
    <c:when test="${itemType eq name_item_animalpart}"> 
    <c:set var="cssClassName" value="animalpart" /> 
    </c:when> 
    <c:when test="${itemType eq name_item_treepart}"> 
    <c:set var="cssClassName" value="treepart" /> 
    </c:when> 
    <c:otherwise> 
    <c:set var="cssClassName" value="" /> 
    </c:otherwise> 
</c:choose>