2010-02-09 31 views
8

如何在Lift中設置錯誤處理程序?我有一些片段的HTML頁面,如果其中一個片段引發了一個異常,我想趕上它,並重定向到一些用戶友好的錯誤頁面。如何在Lift中捕獲異常並重定向到錯誤頁面?

如何以全能的方式做到這一點?我不想將錯誤處理分別放在每個片段中。我在Wicket看起來像this

回答

11

如有疑問,請檢查LiftRules API

根據this post這樣的事情應該工作:

LiftRules.exceptionHandler.prepend { 
    case ("production", Req(path, "", GetRequest), someException) => { 
    Log.error("MELT DOWN!!") 
    RedirectResponse("/") 
    } 
} 

異常處理程序類型的簽名是:

type ExceptionHandlerPF = PartialFunction[(Props.RunModes.Value, Req, 
    Throwable), LiftResponse] 
+0

404未找到鏈接。 – drozzy 2011-05-16 12:29:51

+0

@drozzy,固定的API鏈接到第2.3點docs – 2011-05-16 13:00:51

+2

如果我不想區分RunModes等並只捕獲所有發生在應用程序內部不能處理的異常? – Ivan 2011-11-25 11:49:11

相關問題