5
無論何時做<c:set var="name" value="1"/>
,#{name}
總是一個字符串,如#{name.class}
所證明的。使用c:設置設置非字符串值
有什麼辦法在JSF/Facelets上下文中設置一個範圍屬性是一個Integer或Long的文字值?
無論何時做<c:set var="name" value="1"/>
,#{name}
總是一個字符串,如#{name.class}
所證明的。使用c:設置設置非字符串值
有什麼辦法在JSF/Facelets上下文中設置一個範圍屬性是一個Integer或Long的文字值?
EL有自動類型轉換。這article有一些很好的信息。但是,缺點是你不應該在意。只要param.month實際上是一個Integer,你就應該可以做下面的事情。
<c:set var="myInteger" value="${param.month}"/>
<p>
The value of myInteger is:<c:out value="${myInteger}"/>
Perform a multiplication operation to show that the type is correct:
<c:out value="${myInteger *2}"/>
+1雖然我糾正你錯誤地稱它爲JSTL而不是EL。 JSTL是一個taglib,如http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/所述,EL是這些JSP/EL規範中概述的那些'$ {}'事物:https: //jsp.dev.java.net/spec/jsp-2_1-fr-spec-el.pdf – BalusC 2010-03-17 17:47:24
啊,我只需要使用表達式而不是文字,所以如果我做了value =「#{1}」那麼這將是一個漫長的過程。儘管如此,我仍然不喜歡如何控制它是長期的還是整體的。 – GreenieMeanie 2010-03-17 17:47:45
謝謝,只是一個錯字。我的錯。現在我已經離開了Java土地一段時間了。 – 2010-03-17 17:48:48