如何捕获异常并重定向到Lift中的错误页面?

时间:2010-02-09 19:27:29

标签: scala exception-handling lift

如何在Lift中创建错误处理程序?我有一些带有一些片段的html页面,如果其中一个片段引发异常我想抓住它并重定向到一些用户友好的错误页面。

如何以全能的方式做到这一点?我不想单独将错误处理放到每个代码段。我在Wicket看起来像this

1 个答案:

答案 0 :(得分: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]