2011-12-02 90 views
11

我给JSP一个用户对象,并希望比较用户的属性与给定的字符串。我在做什么,现在是这样的:在EL中比较字符串

<input type="radio" name="lang" value="ger" <c:if test="${user.comLanguage.equals("ger")}">checked="yes"</c:if>/>German</br> 

但我得到的是以下情况例外:

org.apache.jasper.JasperException: /WEB-INF/jsp/library/home.jsp (line: 22, column: 95) equal symbol expected 

,其中95列是comLanguage的一个字母。

这里的正确语法是什么?

+2

您最初的语法会的方式工作,如果你正在使用EL 2.2。并在方法调用中使用单引号而不是双引号。 – BalusC

回答

19

试试这个:

<c:if test="${user.comLanguage=='ger'}"> 

你也可以尝试三元如果:

${user.comLanguage=='ger' ? 'checked' : ''} 
+3

+1。或者,而不是==,eq关键字可以做同样的事情 –

+0

似乎EL使用Java对象,但不是所有的方法。谢谢。 – whitehat