2011-08-10 31 views
2

我在JSP 2.1上使用JSF 2.0。有沒有可能在JSP文件中使用Facelets的<ui:repeat>標籤?如何在JSP中使用Facelets的ui:repeat標籤?

我已導入的Facelets標記庫在JSP作爲

<%@ taglib uri="http://java.sun.com/jsf/facelets" prefix="ui"%> 

但它不識別帶有jsf-impl.jar並給出了一個錯誤的渲染時間爲

org.apache的taglib ui.taglib.xml。 jasper.JasperException:絕對URI:http://java.sun.com/jsf/facelets無法在web.xml或使用此應用程序部署的jar文件中解析

但這個<ui:repeat>標籤在我的Facelets文件中工作正常。

回答

6

這是不可能的。 Facelets是一種獨特的視圖技術,在技術上是JSP的繼承者。你不能混用它們,也不能在JSP文件中使用Facelets標籤。對於JSF2,它是強烈建議使用Facelets而不是JSP,因爲它遠遠優於JSP。

對於JSP,您最好的選擇是使用JSTL<c:forEach>代替。它具有類似的語法,只使用items屬性代替value。或者,如果它需要像<ui:repeat>這樣的呈現時間標記而不是構建時間標記,那麼請考慮查看Tomahawk's<t:dataList>

+0

Hi BalusC!非常感謝您的回覆,對「」很好。 – Channa