From ea3d5a9c823137ab18d27c6ca8ce1767134f809f Mon Sep 17 00:00:00 2001 From: "David M. Johnson" Date: Tue, 8 Sep 2026 07:05:26 -0400 Subject: [PATCH 1/2] Allow same-origin webfonts in preset theme CSP The Content-Security-Policy meta tag added to the preset themes in 6.1.2 sets default-src 'none' with no font-src directive, so font fetches fall back to 'none' and every @font-face webfont is blocked while the CSS still loads. In the gaurav theme this leaves the Font Awesome icons (for example the search and "posted on" glyphs) blank even though the stylesheet applies. Add font-src 'self' so same-origin webfonts load again. All five preset themes carry the same policy string, so update them together to keep it consistent; gaurav is the one that ships webfonts today. Claude-Session: https://claude.ai/code/session_015X69HHQ5XnjRkJP8ymzwFf --- app/src/main/webapp/themes/basic/weblog.vm | 2 +- app/src/main/webapp/themes/basicmobile/weblog.vm | 2 +- app/src/main/webapp/themes/fauxcoly/weblog.vm | 2 +- app/src/main/webapp/themes/frontpage/_header.vm | 2 +- app/src/main/webapp/themes/gaurav/std_head.vm | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/webapp/themes/basic/weblog.vm b/app/src/main/webapp/themes/basic/weblog.vm index 41900ad49..17f52ad2d 100644 --- a/app/src/main/webapp/themes/basic/weblog.vm +++ b/app/src/main/webapp/themes/basic/weblog.vm @@ -3,7 +3,7 @@ - + $model.weblog.name #showAutodiscoveryLinks($model.weblog) #showAnalyticsTrackingCode($model.weblog) diff --git a/app/src/main/webapp/themes/basicmobile/weblog.vm b/app/src/main/webapp/themes/basicmobile/weblog.vm index 3e49d9764..88504abad 100644 --- a/app/src/main/webapp/themes/basicmobile/weblog.vm +++ b/app/src/main/webapp/themes/basicmobile/weblog.vm @@ -3,7 +3,7 @@ - + $model.weblog.name #showAutodiscoveryLinks($model.weblog) #showAnalyticsTrackingCode($model.weblog) diff --git a/app/src/main/webapp/themes/fauxcoly/weblog.vm b/app/src/main/webapp/themes/fauxcoly/weblog.vm index 38f8ce26a..bee525959 100644 --- a/app/src/main/webapp/themes/fauxcoly/weblog.vm +++ b/app/src/main/webapp/themes/fauxcoly/weblog.vm @@ -3,7 +3,7 @@ - + #includeTemplate($model.weblog "standard_head") $model.weblog.name: $model.weblog.tagline #showAutodiscoveryLinks($model.weblog) diff --git a/app/src/main/webapp/themes/frontpage/_header.vm b/app/src/main/webapp/themes/frontpage/_header.vm index d946743c1..0e4e77005 100644 --- a/app/src/main/webapp/themes/frontpage/_header.vm +++ b/app/src/main/webapp/themes/frontpage/_header.vm @@ -3,7 +3,7 @@ - + $model.weblog.name #showAutodiscoveryLinks($model.weblog) diff --git a/app/src/main/webapp/themes/gaurav/std_head.vm b/app/src/main/webapp/themes/gaurav/std_head.vm index 0b5e620cd..94318dcc7 100755 --- a/app/src/main/webapp/themes/gaurav/std_head.vm +++ b/app/src/main/webapp/themes/gaurav/std_head.vm @@ -1,5 +1,5 @@ - + #if ($model.permalink == false) #else From eec233b11b0644501392405413083612440d0931 Mon Sep 17 00:00:00 2001 From: "David M. Johnson" Date: Tue, 8 Sep 2026 07:05:26 -0400 Subject: [PATCH 2/2] Document H2 2.5.250 VALUE reserved-word workaround H2 2.5.250 reserves VALUE, which several Roller tables use as a column name, so Roller fails to read them on that database. H2 is not an officially supported database, so document the ;NON_KEYWORDS=VALUE JDBC URL workaround in the install guide rather than changing the schema. Claude-Session: https://claude.ai/code/session_015X69HHQ5XnjRkJP8ymzwFf --- docs/roller-install-guide.adoc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/roller-install-guide.adoc b/docs/roller-install-guide.adoc index 89e620e19..651296047 100644 --- a/docs/roller-install-guide.adoc +++ b/docs/roller-install-guide.adoc @@ -259,6 +259,19 @@ be packaged as ojdbc14.jar, even if operating on Oracle 9 server. * See the server specific sections to information on where to place the JDBC driver jars. +=== H2 database considerations + +H2 is not one of Roller's officially supported databases (PostgreSQL, MySQL and +Derby are), but Roller can run against it as a generic JDBC database. If you use +H2 2.5.250 or later, be aware that H2 now treats VALUE as a reserved word. +Several Roller tables, such as ROLLER_PROPERTIES, have a column named VALUE, so +Roller will fail to read them on newer H2. To work around this, append +;NON_KEYWORDS=VALUE to your H2 JDBC connection URL, for example: + +---- +jdbc:h2:file:/path/to/rollerdb;NON_KEYWORDS=VALUE +---- + == Deploy Roller to Tomcat Deploying Roller to the Tomcat servlet container involves creating a