我試圖創建一個「Hello World」JSF應用程序。 我有一個字段(字符串)的bean。JSF將EL表達式顯示爲純文本而不是評估值
@ManagedBean (name = "beanTest")
@SessionScoped
public class BeanTest
{
private String myString = "myString";
public String getMyString()
{
return myString;
}
public void setMyString(String myString)
{
this.myString = myString;
}
}
當我想在我的JSP頁面
<h:outputLabel value="#{beanTest.myString}"/>
來顯示字符串值在網頁中顯示它"#{beanTest.myString}"
,而不是"myString"
這是怎麼造成的,我該怎麼解決它?
所以這是因爲該應用程序不知道如何處理EL表達式? – 2012-04-03 14:04:52
@Zack:沒錯。 Servlet 2.4和2.5中的EL API已經發生了變化。有關歷史,請參閱http://stackoverflow.com/questions/4812755/difference-between-jsp-el-jsf-el-and-unified-el。 OP的問題表明他基本上使用了不兼容的EL API,因此所有表達式都不會(不能)被解析。 – BalusC 2012-04-03 14:06:09
你說得對。我將我的web.xml從2.4更改爲2.5,現在一切都像魅力一樣。我如何使用2.4版本? – danieln 2012-04-04 06:37:12