diff --git a/README.md b/README.md
index 7aca8c7..bcc915c 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
# prerender-java
+[](https://central.sonatype.com/artifact/io.prerender/prerender-java)
+
Jakarta Servlet Filter for [Prerender.io](https://prerender.io). Intercepts requests from bots and crawlers and serves prerendered HTML, so your JavaScript-rendered app is fully indexable by search engines and social media scrapers.
Compatible with any **Jakarta EE** application server — Tomcat 10+, Jetty 11+, Spring Boot 3+, Quarkus, Micronaut.
diff --git a/pom.xml b/pom.xml
index 1ac460d..4017298 100644
--- a/pom.xml
+++ b/pom.xml
@@ -11,7 +11,7 @@
prerender-java
Jakarta Servlet Filter for prerendering JavaScript-rendered pages via Prerender.io
- https://github.com/prerender/integrations
+ https://github.com/prerender/java
@@ -20,10 +20,19 @@
+
+
+ Prerender.io
+ support@prerender.io
+ Prerender.io
+ https://prerender.io
+
+
+
- scm:git:git@github.com:prerender/integrations.git
- scm:git:git@github.com:prerender/integrations.git
- https://github.com/prerender/integrations
+ scm:git:git@github.com:prerender/java.git
+ scm:git:git@github.com:prerender/java.git
+ https://github.com/prerender/java
@@ -79,6 +88,55 @@
maven-surefire-plugin
3.2.5
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ 3.3.1
+
+
+ attach-sources
+ jar-no-fork
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.6.3
+
+
+ attach-javadocs
+ jar
+
+
+
+
+ org.apache.maven.plugins
+ maven-gpg-plugin
+ 3.2.4
+
+
+ sign-artifacts
+ verify
+ sign
+
+
+
+
+ --pinentry-mode
+ loopback
+
+
+
+
+ org.sonatype.central
+ central-publishing-maven-plugin
+ 0.6.0
+ true
+
+ central
+
+
diff --git a/src/main/java/io/prerender/PrerenderConfig.java b/src/main/java/io/prerender/PrerenderConfig.java
index 5a85c97..94180a2 100644
--- a/src/main/java/io/prerender/PrerenderConfig.java
+++ b/src/main/java/io/prerender/PrerenderConfig.java
@@ -9,7 +9,8 @@ class PrerenderConfig {
"facebookexternalhit", "twitterbot", "rogerbot", "linkedinbot",
"embedly", "quora link preview", "showyoubot", "outbrain",
"pinterest", "slackbot", "w3c_validator", "perplexity",
- "oai-searchbot", "chatgpt-user", "gptbot", "claudebot", "amazonbot"
+ "oai-searchbot", "chatgpt-user", "gptbot", "claudebot", "amazonbot",
+ "iframely"
);
static final List EXTENSIONS_TO_IGNORE = List.of(
@@ -17,7 +18,8 @@ class PrerenderConfig {
".pdf", ".doc", ".txt", ".ico", ".rss", ".zip", ".mp3", ".rar",
".exe", ".wmv", ".avi", ".ppt", ".mpg", ".mpeg", ".tif", ".wav",
".mov", ".psd", ".ai", ".xls", ".mp4", ".m4a", ".swf", ".dat",
- ".dmg", ".iso", ".flv", ".m4v", ".torrent", ".ttf", ".woff", ".svg"
+ ".dmg", ".iso", ".flv", ".m4v", ".torrent", ".ttf", ".woff", ".svg",
+ ".woff2", ".otf", ".eot", ".webp", ".avif", ".webmanifest"
);
private static final String DEFAULT_SERVICE_URL = "https://service.prerender.io/";
diff --git a/src/test/java/io/prerender/PrerenderFilterTest.java b/src/test/java/io/prerender/PrerenderFilterTest.java
index 3cd41ff..7c64ab8 100644
--- a/src/test/java/io/prerender/PrerenderFilterTest.java
+++ b/src/test/java/io/prerender/PrerenderFilterTest.java
@@ -96,6 +96,17 @@ void botRequest_staticAsset_passesThrough() throws Exception {
verify(response, never()).setStatus(anyInt());
}
+ @Test
+ void botRequest_fontAsset_passesThrough() throws Exception {
+ when(request.getMethod()).thenReturn("GET");
+ when(request.getRequestURI()).thenReturn("/fonts/inter.woff2");
+
+ filter.doFilter(request, response, chain);
+
+ verify(chain).doFilter(request, response);
+ verify(response, never()).setStatus(anyInt());
+ }
+
@Test
void escapedFragment_triggersPrerender() throws Exception {
wireMock.stubFor(get(anyUrl())