HTTP Preload / Resource Hints / Early Hints support for Tomcat 10.0, Java 11+ web apps.
For Tomcat 9.0, please use preload-servlet4-filter.
Edit pom.xml
<dependency>
<groupId>com.example</groupId>
<artifactId>preload-servlet-filter</artifactId>
<version>0.1.0</version>
</dependency>
Edit web.xml
<filter>
<filter-name>preload</filter-name>
<filter-class>com.example.httppreload.web.filter.PreloadFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>manifestFile</param-name>
<param-value>/WEB-INF/preload.json</param-value>
</init-param>
<init-param>
<param-name>watch</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>prefersEarlyHints</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>preload</filter-name>
<url-pattern>*.html</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
See web.xml, index.html and index.jsp