Deactivate Jetty's default 404 error handler

The solution to my problem was to add a custom org.eclipse.jetty.server.handler.ErrorHandler.

If a user doesn't explicitly specify some ErrorHandler, the Jetty server instance seems to register a default ErrorHandler.

As outlined on https://www.eclipse.org/jetty/documentation/jetty-9/index.html#custom-error-pages, to register a custom ErrorHandler, you can follow the following steps.

  1. Implement some org.eclipse.jetty.server.handler.ErrorHandler subclass, e.g. com.example.CustomErrorHandler.
  2. Make this subclass available to your Eclipse server instance, e.g. by bundling CustomErrorHandler in a jar file and then copying that jar file into the ${jetty.base}/lib/ext directory.
  3. Configure your Jetty server instance to have this custom ErrorHandler registered as a bean:

file jetty.xml:

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN"
"http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">

  <!-- more configuration -->
   
  <Call name="addBean">
    <Arg>
      <New class="com.example.CustomErrorHandler">
        <Set name="server"><Ref refid="Server" /></Set>
      </New>
    </Arg>
  </Call>
</Configure>