Since a ResponseBody.Writer is piped to the jetty response object after the kog response is returned from the handler, if the writer throws an error, then kog (e.g. the user's custom error handler) does not handle it. Jetty handles it and displays a blank 500 response.
This is the logic right now:
val request = kog.Request.fromServletRequest(jettyServletRequest)
val response = handler(request)
response.body.pipe(jettyServletResponse)
Since a
ResponseBody.Writer
is piped to the jetty response object after the kog response is returned from the handler, if the writer throws an error, then kog (e.g. the user's custom error handler) does not handle it. Jetty handles it and displays a blank 500 response.This is the logic right now:
For instance, Pebble (http://www.mitchellbosecke.com/pebble/home) writes a to Writer.
So if there's an error in the template, like
{{ doesNotExist() }}
, then you'll get a blank Jetty 500 page.