2014-03-05 89 views
0

我試圖使用Freemarker模板引擎在服務器端呈現HTML內容。當一個簡單的模板正在工作時,當我嘗試使用自定義jsp taglibs時,我遇到了問題。 根據文檔,如果正在使用FreemarkerServlet,那麼做起來相當簡單。它在'JspTaglibs'的數據模型中提供了一個哈希條目。在我的情況下,不可能使用FreemarkerServlet。有沒有辦法使用自定義taglibs而不使用它們?是否有可能「嘲笑」FreemarkerServlet?Freemarker中的自定義JSP標記

回答

0

調用JSP標記在FreemarkerServlet之外沒有解決。我認爲從這個因素出發將是一項實質性工作,並且也會有一些陷阱。

事情是,當時加入了FreemarkerServlet以幫助逐漸從JSP遷移到FTL(這在JSP-2之前的版本中,當JSP對於MVC而言中繼時很笨拙)。所以你可以開始用FTL-S逐個替換你的JPS-s。爲了儘可能平穩地工作,FM數據模型映射到標準的Servlet範圍等等。但是,這並不是您應該如何理想地使用FM,這是一種妥協,是一種黑客。但是,如果您使用FreeMarker方式(JavaBean或Map作爲數據模型)執行操作,那麼調用JSP標記會變得棘手,因爲它可能會在請求範圍中獲取/設置內容,例如您無法訪問來自FreeMarker。