2011-08-18 19 views
1

如何重構cferror標籤的Application.cfc的onerror的()

<cferror type="EXCEPTION" template="ErrorTemplate.cfm"> 

轉化爲一個onError()功能的Application.cfc?注意cferror爲模板創建一個var error結構。有沒有一種快速簡單的方法來創建相同的錯誤結構?如何使用<cfinclude>將它傳遞給ErrorTemplate.cfm?

我知道onRequest()與目標頁面共享變量作用域,但onError也共享變量作用域嗎?如果不是,我該怎麼辦?把它貼在Form範圍內?

謝謝

+0

碰到http://ketanjetty.com/coldfusion/basics/error-handling/它說:「如果你使用的是Application.cfc,使用CFERROR標籤的最好方法是在onRequestStart()方法中。」真? – Henry

+0

奇怪。這實際上工作嗎? (我現在無法測試)。我一直認爲它必須放置在Application.cfc中的函數之外。 – Leigh

回答

2

根據http://livedocs.adobe.com/coldfusion/8/htmldocs/appFramework_15.html

考慮與onerror事件的方法替換cferror標籤。如果 不這樣做,請將cferror標籤放入CFC初始化代碼中。

根據http://www.coldfusionjedi.com/index.cfm/2007/12/5/The-Complete-Guide-to-Adding-Error-Handling-to-Your-ColdFusion-Application

如果你所使用的Application.cfc?那麼要記住的一件事是 ,您可以輕鬆地將CFERROR標記放入您的 Application.cfc文件中。這是允許的,我之前做過。

0

爲什麼你不只是在App.cfc中使用onError來顯示「Sorry and error occurred,we are on on it」type page?

+0

現有的錯誤模板依賴於由cferror提供的錯誤結構 – Henry

+0

在onError中將錯誤轉儲併發送給自己。我還通過電子郵件URL,CGI,會話和應用程序變量onError來確保在出現問題時解決問題。 – OagerMouzer