Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

216
Views
Minimum Spring Boot Code to log 404s

In my Spring Boot Application, I'm currently leveraging the resources/public/error/404.html custom error page to show (automagically) this 404 page errors on invalid URLS.

Is there an easy way to retain this auto functionality, and add a simple log message (with the invalid URL) for every such 404 ?

Ideally with as little code as possible I would want some like :

//Some code
LOGGER.warn("Invalid URL " + request.url);
//Some more code
about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

You need to define a custom ErrorViewResolver:

@Component
public class MyErrorViewResolver implements ErrorViewResolver {

    @Override
    public ModelAndView resolveErrorView(HttpServletRequest request, HttpStatus status, Map<String, Object> model) {
    if (HttpStatus.NOT_FOUND == status) {
        LoggerFactory.getLogger(this.getClass()).error("error 404 for url " + model.get("path"));
        return new ModelAndView("error404", model);
    }
    else {
        return new ModelAndView("error", model);
    }
  }
}

This MyErrorViewResolver will be automatically called in the BasicErrorController class.

For a 404 error, the view "error404" will be displayed.

For the other errors, the view "error" will be displayed.

Views must be in the "templates" folder (resources/templates/error404.html).

about 4 years ago · Santiago Trujillo Report

0

Add NotFoundException handler.

public class BaseController {

  // Logger declaration

  @ExceptionHandler(NotFoundException.class)
  @ResponseStatus(value = HttpStatus.NOT_FOUND)
  @ResponseBody
  public ErrorResponse handleNotFoundError(HttpServletRequest req, NotFoundException exception) {
     List<Error> errors = Lists.newArrayList();
     errors.add(new Error(String.valueOf(exception.getCode()), exception.getMessage()));
     log.error(exception);
     return new ErrorResponse(errors);
  }
}
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!