我正在嘗試在Lucee中創建全局函數。我遵循指示here,並讓它「工作」。裏面的Application.cfc的我把下面的代碼:Lucee/Coldfusion中的全局函數
public void function onRequest() {
URL.IsInternalUser = function() { return (SESSION.user.ID ?: 0); };
}
這似乎是工作在某些情況下正常,但如果我們需要在一個包含的Application.cfc子目錄來訪問該功能不具備的功能再 - 定義它會錯誤地說這個函數不存在。
我試圖實現的最終目標是擁有一個包含多個用戶定義函數的cfc
文件,然後讓它們在整個應用程序中都可以訪問,而無需重新定義一遍又一遍。
有沒有更好的方法來完成我們想要的?我問這是因爲我在前面評論部分引用的頁面上有一個報價:
我同意。在未來的其他地方我不會感到驚訝。
我喜歡Railo的方法是它是完全的沙箱。 主機A的標籤&函數庫永遠不會與主機B的 庫交叉/衝突,除非它們被放入全局服務器文件夾中。它也是虛擬文件系統的相同方式,幾乎所有的東西都是 (數據源等)。
它特別提到了Railo有一種創建UDF的方法,但我無法在任何地方找到任何文檔。由於我們使用Lucee,它是Railo的一個分支,我認爲它必須具備Railo創建UDF的功能。希望有人讀到這可以幫助我,並指出我在正確的方向。
每當服務器重新啓動時,WEB-INF目錄是否會被覆蓋? – Yamaha32088
不,WEB-INF僅在Railo/Lucee服務開始時創建一次。該目錄然後保存並存儲設置。 – Alex
真棒,我會給這個嘗試謝謝! – Yamaha32088