2013-05-16 37 views
0

我正在嘗試將工作項目中的Cheetah從0.9升級到2.4.4。在模板中創建特定變量時,我收到了一些奇怪的錯誤。下面是一個例子:升級獵豹模板並獲取變量賦值中的奇數錯誤

#set formUtil = $iLib.aquariumFactory("widget.FormUtil", 
    defaults=[{"username": $session.get("username")}, $form]) 

這將產生對編譯以下錯誤:

NOTFOUND:找不到「得到」,而搜索「得到」

如果我重構像這樣:

#set username = $session.get("username") 
#set formUtil = $iLib.aquariumFactory("widget.FormUtil", 
    defaults=[{"username": $username}, $form]) 

我沒有得到任何錯誤。我在其他地方也遇到過類似的錯誤(「在搜索X時找不到X」),但我不清楚在獵豹中發生了什麼變化,以便能夠以一致的方式解決它。

回答

1

我想出了這個問題。 Cheetah的WebWare Servlet代碼具有請求,響應,會話和事務變量。這些變量成爲模板中的佔位符。如果您不使用WebWare,則這些佔位符將被設置爲無,並將覆蓋搜索列表中的任何類似名稱的值。