org.springframework.boot.autoconfigure.web.reactive.error

Class AbstractErrorWebExceptionHandler

  • java.lang.Object
    • org.springframework.boot.autoconfigure.web.reactive.error.AbstractErrorWebExceptionHandler
    • Method Detail

      • setMessageWriters

        public void setMessageWriters(List<HttpMessageWriter<?>> messageWriters)
        Configure HTTP message writers to serialize the response body with.
        Parameters:
        messageWriters - the HttpMessageWriters to use
      • setMessageReaders

        public void setMessageReaders(List<HttpMessageReader<?>> messageReaders)
        Configure HTTP message readers to deserialize the request body with.
        Parameters:
        messageReaders - the HttpMessageReaders to use
      • setViewResolvers

        public void setViewResolvers(List<ViewResolver> viewResolvers)
        Configure the ViewResolver to use for rendering views.
        Parameters:
        viewResolvers - the list of ViewResolvers to use
      • getErrorAttributes

        protected Map<String,Object> getErrorAttributes(ServerRequest request,
                                                        boolean includeStackTrace)
        Extract the error attributes from the current request, to be used to populate error views or JSON payloads.
        Parameters:
        request - the source request
        includeStackTrace - whether to include the error stacktrace information
        Returns:
        the error attributes as a Map.
      • getError

        protected Throwable getError(ServerRequest request)
        Extract the original error from the current request.
        Parameters:
        request - the source request
        Returns:
        the error
      • isTraceEnabled

        protected boolean isTraceEnabled(ServerRequest request)
        Check whether the trace attribute has been set on the given request.
        Parameters:
        request - the source request
        Returns:
        true if the error trace has been requested, false otherwise
      • renderErrorView

        protected reactor.core.publisher.Mono<ServerResponse> renderErrorView(String viewName,
                                                                              ServerResponse.BodyBuilder responseBody,
                                                                              Map<String,Object> error)
        Render the given error data as a view, using a template view if available or a static HTML file if available otherwise. This will return an empty Publisher if none of the above are available.
        Parameters:
        viewName - the view name
        responseBody - the error response being built
        error - the error data as a map
        Returns:
        a Publisher of the ServerResponse
      • renderDefaultErrorView

        protected reactor.core.publisher.Mono<ServerResponse> renderDefaultErrorView(ServerResponse.BodyBuilder responseBody,
                                                                                     Map<String,Object> error)
        Render a default HTML "Whitelabel Error Page".

        Useful when no other error view is available in the application.

        Parameters:
        responseBody - the error response being built
        error - the error data as a map
        Returns:
        a Publisher of the ServerResponse
      • getRoutingFunction

        protected abstract RouterFunction<ServerResponse> getRoutingFunction(ErrorAttributes errorAttributes)
        Create a RouterFunction that can route and handle errors as JSON responses or HTML views.

        If the returned RouterFunction doesn't route to a HandlerFunction, the original exception is propagated in the pipeline and can be processed by other WebExceptionHandlers.

        Parameters:
        errorAttributes - the ErrorAttributes instance to use to extract error information
        Returns:
        a RouterFunction that routes and handles errors