0
假設一個例子。我有以下接口:兩遍JSP頁面呈現
public interface DataSource<T> {
Future<T> fetch();
}
此數據源可以執行異步數據提取。我們在JSP中使用數據源的標籤如下:
<html>
<d:fetch from="${orderDS}" var="orders">
<c:foreach in="${orders}" var="order">
<div class="order">
<c:out value="${order.title}" />
</div>
</c:foreach>
</d:fetch>
</html>
所以,我想要什麼?我希望JSP呈現引擎調用我的自定義標記(本示例中爲FetchTag)兩次。首先調用FetchTag將執行DataSource.fetch()調用,並將Future作爲對象字段保存在本地。在第二次調用FetchTag時執行Future.get()調用,並且將被阻塞直到數據可用。
有沒有辦法做這樣的事情?
是的,我們想到了。但我們試圖保存與禁用js的客戶端的兼容性。也許還有其他模板引擎更適合這項任務? – 2010-04-20 12:23:26