I cleared all the logs for JupyterHub and Keycloak, then restarted their containers. I also cleared out the browser cache and the cookies for this site, then reproduced the error again. Here is what I believe to be a pertinent slice of the DEBUG log from Keycloak. The new log was 18,000 lines just for the few minutes that I was working on this - I’ve narrowed it down. I apologize, but I don’t know Java - please let me know if I should include more at either end of this:
2025-07-22 15:57:33,817 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Couldn't find template in cache for "error.ftl"("en_US", UTF-8, parsed); will try to load it.
2025-07-22 15:57:33,818 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("error_en_US.ftl"): Not found
2025-07-22 15:57:33,818 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("error_en.ftl"): Not found
2025-07-22 15:57:33,818 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("error.ftl"): Found
2025-07-22 15:57:33,818 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Loading template for "error.ftl"("en_US", UTF-8, parsed) from "jar:file:/opt/keycloak/lib/lib/main/org.keycloak.keycloak-themes-26.3.1.jar!/theme/base/login/error.ftl"
2025-07-22 15:57:33,820 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Couldn't find template in cache for "template.ftl"("en_US", UTF-8, parsed); will try to load it.
2025-07-22 15:57:33,820 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("template_en_US.ftl"): Not found
2025-07-22 15:57:33,820 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("template_en.ftl"): Not found
2025-07-22 15:57:33,820 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("template.ftl"): Found
2025-07-22 15:57:33,820 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Loading template for "template.ftl"("en_US", UTF-8, parsed) from "jar:file:/opt/keycloak/lib/lib/main/org.keycloak.keycloak-themes-26.3.1.jar!/theme/keycloak.v2/login/template.ftl"
2025-07-22 15:57:33,828 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Couldn't find template in cache for "field.ftl"("en_US", UTF-8, parsed); will try to load it.
2025-07-22 15:57:33,828 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("field_en_US.ftl"): Not found
2025-07-22 15:57:33,828 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("field_en.ftl"): Not found
2025-07-22 15:57:33,828 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("field.ftl"): Found
2025-07-22 15:57:33,828 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Loading template for "field.ftl"("en_US", UTF-8, parsed) from "jar:file:/opt/keycloak/lib/lib/main/org.keycloak.keycloak-themes-26.3.1.jar!/theme/keycloak.v2/login/field.ftl"
2025-07-22 15:57:33,832 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Couldn't find template in cache for "footer.ftl"("en_US", UTF-8, parsed); will try to load it.
2025-07-22 15:57:33,832 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("footer_en_US.ftl"): Not found
2025-07-22 15:57:33,833 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("footer_en.ftl"): Not found
2025-07-22 15:57:33,833 FINE [freemarker.cache] (vert.x-eventloop-thread-5) TemplateLoader.findTemplateSource("footer.ftl"): Found
2025-07-22 15:57:33,833 FINE [freemarker.cache] (vert.x-eventloop-thread-5) Loading template for "footer.ftl"("en_US", UTF-8, parsed) from "jar:file:/opt/keycloak/lib/lib/main/org.keycloak.keycloak-themes-26.3.1.jar!/theme/keycloak.v2/login/footer.ftl"
2025-07-22 15:57:33,844 DEBUG [org.keycloak.transaction.JtaTransactionWrapper] (vert.x-eventloop-thread-5) JtaTransactionWrapper rollback. Request Context: Non-HTTP task
2025-07-22 15:57:33,844 DEBUG [org.keycloak.transaction.JtaTransactionWrapper] (vert.x-eventloop-thread-5) JtaTransactionWrapper end. Request Context: Non-HTTP task
2025-07-22 15:57:33,844 DEBUG [io.quarkus.micrometer.runtime.binder.vertx.VertxHttpServerMetrics] (vert.x-eventloop-thread-5) responseEnd io.vertx.core.http.impl.Http2ServerResponse@4bba0a6d, HttpRequestMetric [initialPath=/hub/oauth_callback, currentRoutePath=/, templatePath=null, request=io.vertx.core.http.impl.Http2ServerRequest@28025ff2]
2025-07-22 15:57:33,844 DEBUG [org.infinispan.metrics.impl.MetricsRegistryImpl] (vert.x-eventloop-thread-5) Registered metric MeterId{name='http.server.requests', tags=[tag(method=GET),tag(outcome=CLIENT_ERROR),tag(status=404),tag(uri=NOT_FOUND)]}
2025-07-22 15:57:34,011 DEBUG [io.quarkus.micrometer.runtime.binder.vertx.VertxHttpServerMetrics] (vert.x-eventloop-thread-5) requestRouted null HttpRequestMetric [initialPath=/resources/r0l2g/common/keycloak/vendor/patternfly-v5/patternfly.min.css, currentRoutePath=null, templatePath=null, request=io.vertx.core.http.impl.Http2ServerRequest@49191264]
2025-07-22 15:57:34,012 DEBUG [io.quarkus.micrometer.runtime.binder.vertx.VertxHttpServerMetrics] (vert.x-eventloop-thread-5) requestRouted null HttpRequestMetric [initialPath=/resources/r0l2g/common/keycloak/vendor/patternfly-v5/patternfly.min.css, currentRoutePath=null, templatePath=null, request=io.vertx.core.http.impl.Http2ServerRequest@49191264]
2025-07-22 15:57:34,012 DEBUG [io.quarkus.micrometer.runtime.binder.vertx.VertxHttpServerMetrics] (vert.x-eventloop-thread-5) requestRouted / HttpRequestMetric [initialPath=/resources/r0l2g/common/keycloak/vendor/patternfly-v5/patternfly.min.css, currentRoutePath=null, templatePath=null, request=io.vertx.core.http.impl.Http2ServerRequest@49191264]
2025-07-22 15:57:34,013 DEBUG [org.keycloak.transaction.JtaTransactionWrapper] (executor-thread-5) new JtaTransactionWrapper. Was existing transaction suspended: false Request Context: HTTP GET /resources/r0l2g/common/keycloak/vendor/patternfly-v5/patternfly.min.css