Handle missing table sql errors with 404

This commit is contained in:
Joe Nelson
2014-12-06 17:42:20 -08:00
parent 21b0b02c03
commit eb7e9586ab
3 changed files with 25 additions and 8 deletions
+7 -5
View File
@@ -9,6 +9,7 @@ import Middleware
import Control.Monad (unless)
import Control.Monad.IO.Class (liftIO)
import Control.Monad.Reader (runReaderT, ask)
import Control.Exception
import Data.String.Conversions (cs)
import Network.Wai.Middleware.Cors (cors)
import Network.Wai.Handler.Warp hiding (Connection)
@@ -44,13 +45,14 @@ main = do
middle =
(if configSecure conf then redirectInsecure else id)
. gzip def . cors corsPolicy . clientErrors
. staticPolicy (only [("favicon.ico", "static/favicon.ico")]) in
. staticPolicy (only [("favicon.ico", "static/favicon.ico")])
H.session pgSettings sessSettings $ do
session' <- flip runReaderT <$> ask
let runApp req respond = respond =<< session' (app req) in
H.session pgSettings sessSettings $ do
session' <- flip runReaderT <$> ask
let runApp req respond =
respond =<< catchJust isSqlError (session' $ app req) sqlErrHandler
liftIO $ runSettings appSettings $ middle runApp
liftIO $ runSettings appSettings $ middle runApp
-- . authenticated (cs $ configAnonRole conf) $ app
where