The GitHub Actions job "CI" on grails-core.git/fix/16129-grailswebrequest-cast has succeeded. Run started by GitHub user jdaugherty (triggered by jdaugherty).
Head commit for run: 912be076d0a28e59e03e6e22f989b0e9d30ec7ec / James Daugherty <[email protected]> Resolve error handlers and mapping names without a bound GrailsWebRequest A DispatcherServlet other than the Grails one - the one MockMvc runs, for example - binds a plain ServletRequestAttributes over the GrailsWebRequest that GrailsWebRequestFilter bound. Guarding the casts alone left GrailsExceptionResolver forwarding to a controller error handler with a null GrailsWebRequest, so the original exception was still replaced. - URL mapping names, reverse mappings and the default URL creator find the GrailsWebRequest the filter stored on the request when the bound attributes are plain - Without one, a name closure is not called and resolves to null, and a map of HTTP methods is keyed by the method of the bound request. With no attributes bound at all, a closure is still called without a delegate - GrailsExceptionResolver forwards to a controller error handler only when the request has a GrailsWebRequest, and an error handler that cannot be resolved no longer replaces the exception being resolved: it is logged and the /error view renders the original exception - The default URL creator no longer prefixes URLs with "null" when there is no context path Fixes #16129 Report URL: https://github.com/apache/grails-core/actions/runs/36102769953 With regards, GitHub Actions via GitBox
