You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by al...@apache.org on 2026/10/18 01:42:34 UTC

(jspwiki) 01/01: NOJIRA experiment to see if we can get code coverage reporting to github

This is an automated email from the ASF dual-hosted git repository.

spyhunter99 pushed a commit to branch feature/GutHubCodeCoverage
in repository https://gitbox.apache.org/repos/asf/jspwiki.git

commit eff0f40a91d2a8b4c97d953689313743e58da561
Author: Alex O'Ree <al...@apache.org>
AuthorDate: Sat Oct 17 21:42:21 2026 -0400

    NOJIRA experiment to see if we can get code coverage reporting to github
---
 .github/workflows/maven.yml |   15 +-
 pom.xml                     | 2486 ++++++++++++++++++++++---------------------
 2 files changed, 1306 insertions(+), 1195 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 5bbd8e067..c18dc05c2 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -63,4 +63,17 @@ jobs:
 # token required
 # Disabled due to some bug in the plugin
 #    - name: Dependency scan
-#      run: mvn install -B -T 1C -DskipTests=true org.owasp:dependency-check-maven:LATEST:check -DassemblyAnalyzerEnabled=false
\ No newline at end of file
+#      run: mvn install -B -T 1C -DskipTests=true org.owasp:dependency-check-maven:LATEST:check -DassemblyAnalyzerEnabled=false
+    - name: generate jacoco aggregated
+      run: mvn -Pgithubjacoco verify -N
+    - name: Add Coverage Comment to PR
+      uses: madrapps/jacoco-report@v1.8.0
+      with:
+        
+        paths: ${{ github.workspace }}/target/site/jacoco-aggregate/jacoco.xml
+          
+        token: ${{ secrets.GITHUB_TOKEN }}
+        min-coverage-overall: 50          # Fails the gate if overall coverage is under 80%
+        min-coverage-changed-lines: 50    # Fails the gate if newly added lines are under 80%
+        title: "Code Coverage Report"
+        update-comment: true              # Updates the same comment instead of creating spam duplicates
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index b76bcfa18..4c92d6b42 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,1206 +19,1304 @@
 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
-  <parent>
-    <groupId>org.apache</groupId>
-    <artifactId>apache</artifactId>
-    <version>39</version>
-  </parent>
-
-  <groupId>org.apache.jspwiki</groupId>
-  <artifactId>jspwiki-builder</artifactId>
-  <modelVersion>4.0.0</modelVersion>
-  <name>Apache JSPWiki</name>
-  <version>3.0.1-SNAPSHOT</version>
-  <packaging>pom</packaging>
-  <description>Apache JSPWiki is a leading open source WikiWiki engine, feature-rich
-    and built around standard JEE components (Java, servlets, JSP).</description>
-  <inceptionYear>2001</inceptionYear>
-  <url>https://jspwiki.apache.org/</url>
-
-  <properties>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-    <project.build.outputTimestamp>2026-08-16T18:19:17Z</project.build.outputTimestamp>
-<!-- will be changed by release plugin during releases -->
-    <jdk.version>17</jdk.version>
-    <jdk.javadoc.doclet.version>2.3.2</jdk.javadoc.doclet.version>
-    <maven.version>3.5</maven.version>
-
-    <akismet-java.version>1.0.0</akismet-java.version>
-    <awaitility.version>4.3.0</awaitility.version>
-    <aws-java-sdk-kendra.version>1.12.797</aws-java-sdk-kendra.version>
-    <commons-codec.version>1.22.1</commons-codec.version>
-    <commons-collections.version>4.6.0</commons-collections.version>
-    <commons-fileupload.version>2.0.0-M5</commons-fileupload.version>
-    <commons-io.version>2.22.0</commons-io.version>
-    <commons-lang.version>3.20.0</commons-lang.version>
-    <commons-net.version>3.13.0</commons-net.version>
-    <commons-text.version>1.15.0</commons-text.version>
-    <commons-validator.version>1.11.0</commons-validator.version>
-    <ehcache.version>2.10.9.2</ehcache.version>
-    <flexmark.version>0.64.8</flexmark.version>
-    <freshcookies-security.version>0.60</freshcookies-security.version>
-    <gson.version>2.13.2</gson.version>
-    <hsqldb.version>2.7.4</hsqldb.version>
-    <jackson-version>3.2.2</jackson-version>
-    <jakarta-activation.version>2.0.1</jakarta-activation.version>
-    <jakarta-activation-api.version>2.1.4</jakarta-activation-api.version>
-    <jakarta-jsp-api.version>4.0.0</jakarta-jsp-api.version>
-    <jakarta-jstl.version>3.0.1</jakarta-jstl.version>
-    <jakarta-jstl-api.version>3.0.2</jakarta-jstl-api.version>
-    <jakarta-mail.version>2.0.2</jakarta-mail.version>
-    <jakarta-mail-api.version>2.1.5</jakarta-mail-api.version>
-    <jakarta-servlet-api.version>6.1.0</jakarta-servlet-api.version>
-    <java-diff-utils-version>4.16</java-diff-utils-version>
-    <jacoco-version>0.8.14</jacoco-version>
-    <jamm.version>0.4.0</jamm.version>
-    <jaxen.version>2.0.0</jaxen.version>
-    <javax-mail.version>2.0.2</javax-mail.version>
-    <javax-jsp-api.version>2.3.3</javax-jsp-api.version>
-    <jdom2.version>2.0.6</jdom2.version>
-    <jrcs-diff.version>0.4.2</jrcs-diff.version>
-    <junit.version>6.1.3</junit.version>
-    <log4j2.version>2.26.1</log4j2.version>
-    <lucene.version>9.12.2</lucene.version>
-    <mockito.version>5.20.0</mockito.version>
-    <nekohtml.version>2.1.3</nekohtml.version>
-    <oro.version>2.0.8</oro.version>
-    <rome.version>2.1.0</rome.version>
-    <sandler.version>0.5</sandler.version>
-    <selenide.version>7.18.1</selenide.version>
-    <slf4j.version>2.0.18</slf4j.version>
-    <tika.version>3.3.2</tika.version>
-    <tomcat.version>10.1.60</tomcat.version>
-    <xmlrpc.version>2.0.1</xmlrpc.version>
-    <xstream.version>1.4.21</xstream.version>
-
-    <plugin.antrun.version>3.2.0</plugin.antrun.version>
-    <plugin.assembly.version>3.8.0</plugin.assembly.version>
-    <plugin.clean.version>3.5.0</plugin.clean.version>
-    <plugin.compiler.version>3.16.0</plugin.compiler.version>
-    <plugin.dependency.version>3.11.0</plugin.dependency.version>
-    <plugin.enforcer.version>3.6.3</plugin.enforcer.version>
-    <plugin.failsafe.version>3.6.0</plugin.failsafe.version>
-    <plugin.install.version>3.2.0</plugin.install.version>
-    <plugin.jar.version>3.5.1</plugin.jar.version>
-    <plugin.javadoc.version>3.12.0</plugin.javadoc.version>
-    <plugin.jxr.version>3.6.0</plugin.jxr.version>
-    <plugin.project-info-reports.version>3.9.0</plugin.project-info-reports.version>
-    <plugin.release.version>3.3.1</plugin.release.version>
-    <plugin.remote-resources.version>3.3.0</plugin.remote-resources.version>
-    <plugin.resources.version>3.5.0</plugin.resources.version>
-    <plugin.source.version>3.4.0</plugin.source.version>
-    <plugin.surefire.version>3.6.0</plugin.surefire.version>
-    <plugin.surefire.junit5-tree-reporter.version>1.5.1</plugin.surefire.junit5-tree-reporter.version>
-    <plugin.surefire.junit5-tree-reporter.enable-console>false</plugin.surefire.junit5-tree-reporter.enable-console>
-    <plugin.war.version>3.5.1</plugin.war.version>
-    <plugin.inmemdb.version>1.4.3</plugin.inmemdb.version>
-    <plugin.jspc.version>5.0.0</plugin.jspc.version>
-    <plugin.build-helper.version>3.6.1</plugin.build-helper.version>
-    <plugin.checksum.version>1.11</plugin.checksum.version>
-    <plugin.jslint.version>1.0.1</plugin.jslint.version>
-    <plugin.cargo.version>1.10.28</plugin.cargo.version>
-    <plugin.clirr.version>2.8</plugin.clirr.version>
-    <plugin.cyclonedx.version>2.9.3</plugin.cyclonedx.version>
-    <plugin.sonar.version>5.3.0.6276</plugin.sonar.version>
-    <plugin.sonar-report.version>0.1</plugin.sonar-report.version>
-    <plugin.wro4j.version>2.1.1</plugin.wro4j.version>
-    <plugin.eclipse-lifecycle-mapping.version>1.0.0</plugin.eclipse-lifecycle-mapping.version>
-    <maven.compiler.source>${jdk.version}</maven.compiler.source> <!-- override values from parent pom -->
-    <maven.compiler.target>${jdk.version}</maven.compiler.target>
-    <minimize>true</minimize> <!-- wro4j compression -->
-  </properties>
-
-  <scm>
-    <connection>scm:git:https://github.com/apache/jspwiki.git</connection>
-    <developerConnection>scm:git:https://github.com/apache/jspwiki.git</developerConnection>
-    <url>https://github.com/apache/jspwiki</url>
-    <tag>2.12.1-RC1</tag>
-  </scm>
-
-  <modules>
-    <module>jspwiki-wikipages</module>
-    <module>jspwiki-util</module>
-    <module>jspwiki-event</module>
-    <module>jspwiki-api</module>
-    <module>jspwiki-bootstrap</module>
-    <module>jspwiki-cache</module>
-    <module>jspwiki-http</module>
-    <module>jspwiki-wysiwyg</module>
-    <module>jspwiki-main</module>
-    <module>jspwiki-markdown</module>
-    <module>jspwiki-tika-searchprovider</module>
-    <module>jspwiki-kendra-searchprovider</module>
-    <module>jspwiki-plugins</module>
-    <module>jspwiki-https-enabler</module>
-    <module>jspwiki-210-test-adaptees</module>
-    <module>jspwiki-210-adapters</module>
-    <module>jspwiki-war</module>
-    <module>jspwiki-war-https</module>
-    <module>jspwiki-portable</module>
-    <module>jspwiki-it-tests</module><!-- IT tests are launched only if -Pintegration-tests is given -->
-    <module>jspwiki-bom</module>
-  </modules>
-
-  <dependencyManagement> <!-- defines what configuration is going to be used if, and only if, the dependency is used -->
-    <dependencies>
-      <!-- ordered alphabetically by scope:groupId:artifactId -->
-      <!-- compile dependencies -->
-      <dependency>
-        <groupId>com.amazonaws</groupId>
-        <artifactId>aws-java-sdk-kendra</artifactId>
-        <version>${aws-java-sdk-kendra.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.codeborne</groupId>
-        <artifactId>selenide</artifactId>
-        <version>${selenide.version}</version>
-      </dependency>
-
-       <dependency>
-          <groupId>commons-codec</groupId>
-          <artifactId>commons-codec</artifactId>
-          <version>${commons-codec.version}</version>
-      </dependency>
-
-      <dependency>
-            <groupId>tools.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-            <version>${jackson-version}</version>
-      </dependency>
-
-      <dependency>
-          <groupId>commons-net</groupId>
-          <artifactId>commons-net</artifactId>
-          <version>${commons-net.version}</version>
-      </dependency>
-
-      <dependency>
-          <groupId>commons-validator</groupId>
-          <artifactId>commons-validator</artifactId>
-          <version>${commons-validator.version}</version>
-      </dependency>
-
-      <dependency><!-- https://jakartaee.github.io/mail-api/README-JakartaMail#Download_Jakarta_Mail_Release -->
-        <groupId>com.sun.mail</groupId>
-        <artifactId>jakarta.mail</artifactId>
-        <version>${jakarta-mail.version}</version>
-      </dependency>
-
-      <dependency><!-- as of 1.6.2 not included by javax.mail-api, see https://javaee.github.io/javamail/docs/COMPAT.txt -->
-        <groupId>com.sun.mail</groupId>
-        <artifactId>logging-mailhandler</artifactId>
-        <version>${javax-mail.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.google.code.gson</groupId>
-        <artifactId>gson</artifactId>
-        <version>${gson.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark-ext-attributes</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark-ext-definition</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark-ext-footnotes</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark-ext-tables</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.vladsch.flexmark</groupId>
-        <artifactId>flexmark-ext-toc</artifactId>
-        <version>${flexmark.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>commons-io</groupId>
-        <artifactId>commons-io</artifactId>
-        <version>${commons-io.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>jakarta.activation</groupId>
-        <artifactId>jakarta.activation-api</artifactId>
-        <version>${jakarta-activation-api.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>com.sun.activation</groupId>
-        <artifactId>jakarta.activation</artifactId>
-        <version>${jakarta-activation.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>jakarta.mail</groupId>
-        <artifactId>jakarta.mail-api</artifactId>
-        <version>${jakarta-mail-api.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>jakarta.servlet</groupId>
-        <artifactId>jakarta.servlet-api</artifactId>
-        <version>${jakarta-servlet-api.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>jakarta.servlet.jsp</groupId>
-        <artifactId>jakarta.servlet.jsp-api</artifactId>
-        <version>${jakarta-jsp-api.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>jakarta.servlet.jsp.jstl</groupId>
-        <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
-        <version>${jakarta-jstl-api.version}</version>
-      </dependency>
-
-       <dependency>
-            <groupId>io.github.java-diff-utils</groupId>
-            <artifactId>java-diff-utils</artifactId>
-            <version>${java-diff-utils-version}</version>
-        </dependency>
-
-      <dependency>
-        <groupId>jaxen</groupId>
-        <artifactId>jaxen</artifactId>
-        <version>${jaxen.version}</version>
-      </dependency>
-
-      <dependency>
-          <groupId>com.rometools</groupId>
-          <artifactId>rome</artifactId>
-          <version>${rome.version}</version>
-      </dependency>
-
-      <dependency>
-          <groupId>net.thauvin.erik</groupId>
-          <artifactId>akismet-kotlin</artifactId>
-          <version>${akismet-java.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>net.sourceforge</groupId>
-        <artifactId>sandler</artifactId>
-        <version>${sandler.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>net.sf.ehcache</groupId>
-        <artifactId>ehcache</artifactId>
-        <version>${ehcache.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.commons</groupId>
-        <artifactId>commons-collections4</artifactId>
-        <version>${commons-collections.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.commons</groupId>
-        <artifactId>commons-fileupload2-javax</artifactId>
-        <version>${commons-fileupload.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.commons</groupId>
-        <artifactId>commons-fileupload2-jakarta-servlet6</artifactId>
-        <version>${commons-fileupload.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.commons</groupId>
-        <artifactId>commons-lang3</artifactId>
-        <version>${commons-lang.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.commons</groupId>
-        <artifactId>commons-text</artifactId>
-        <version>${commons-text.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.logging.log4j</groupId>
-        <artifactId>log4j-api</artifactId>
-        <version>${log4j2.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.logging.log4j</groupId>
-        <artifactId>log4j-core</artifactId>
-        <version>${log4j2.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.logging.log4j</groupId>
-        <artifactId>log4j-1.2-api</artifactId>
-        <version>${log4j2.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.logging.log4j</groupId>
-        <artifactId>log4j-slf4j-impl</artifactId>
-        <version>${log4j2.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.lucene</groupId>
-        <artifactId>lucene-analysis-common</artifactId>
-        <version>${lucene.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.lucene</groupId>
-        <artifactId>lucene-backward-codecs</artifactId>
-        <version>${lucene.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.lucene</groupId>
-        <artifactId>lucene-highlighter</artifactId>
-        <version>${lucene.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.lucene</groupId>
-        <artifactId>lucene-queryparser</artifactId>
-        <version>${lucene.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.tika</groupId>
-        <artifactId>tika-core</artifactId>
-        <version>${tika.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.apache.tika</groupId>
-        <artifactId>tika-parsers-standard-package</artifactId>
-        <version>${tika.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.codelibs</groupId>
-        <artifactId>nekohtml</artifactId>
-        <version>${nekohtml.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.freshcookies</groupId>
-        <artifactId>freshcookies-security</artifactId>
-        <version>${freshcookies-security.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.glassfish.web</groupId>
-        <artifactId>jakarta.servlet.jsp.jstl</artifactId>
-        <version>${jakarta-jstl.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.jdom</groupId>
-        <artifactId>jdom2</artifactId>
-        <version>${jdom2.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.slf4j</groupId>
-        <artifactId>slf4j-api</artifactId>
-        <version>${slf4j.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.slf4j</groupId>
-        <artifactId>slf4j-log4j12</artifactId>
-        <version>${slf4j.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>oro</groupId>
-        <artifactId>oro</artifactId>
-        <version>${oro.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>xmlrpc</groupId>
-        <artifactId>xmlrpc</artifactId>
-        <version>${xmlrpc.version}</version>
-      </dependency>
-
-      <!-- test dependencies -->
-      <dependency>
-        <groupId>com.github.jbellis</groupId>
-        <artifactId>jamm</artifactId>
-        <version>${jamm.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.awaitility</groupId>
-        <artifactId>awaitility</artifactId>
-        <version>${awaitility.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.hsqldb</groupId>
-        <artifactId>hsqldb</artifactId>
-        <version>${hsqldb.version}</version>
-        <classifier>jdk8</classifier>
-      </dependency>
-
-      <dependency>
-        <groupId>org.hsqldb</groupId>
-        <artifactId>sqltool</artifactId>
-        <version>${hsqldb.version}</version>
-        <classifier>jdk8</classifier>
-      </dependency>
-
-      <dependency>
-        <groupId>org.junit</groupId>
-        <artifactId>junit-bom</artifactId>
-        <version>${junit.version}</version>
-        <type>pom</type>
-        <scope>import</scope>
-      </dependency>
-
-      <dependency>
-        <groupId>org.mockito</groupId>
-        <artifactId>mockito-core</artifactId>
-        <version>${mockito.version}</version>
-      </dependency>
-
-      <dependency>
-        <groupId>org.mockito</groupId>
-        <artifactId>mockito-junit-jupiter</artifactId>
-        <version>${mockito.version}</version>
-      </dependency>
-    </dependencies>
-  </dependencyManagement>
-
-  <build>
-    <defaultGoal>verify apache-rat:check</defaultGoal>
-    <plugins>  <!-- plugins executed with every build -->
-      <plugin>
-        <artifactId>maven-enforcer-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>enforcer-validations</id>
-            <goals><goal>enforce</goal></goals>
-          </execution>
-        </executions>
-      </plugin>
-
-      <plugin>
-        <groupId>net.nicoulaj.maven.plugins</groupId>
-        <artifactId>checksum-maven-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.jacoco</groupId>
-        <artifactId>jacoco-maven-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.cyclonedx</groupId>
-        <artifactId>cyclonedx-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>generate-sbom</id>
-            <goals>
-              <goal>makeAggregateBom</goal>
-            </goals>
-            <phase>package</phase>
-            <configuration>
-              <externalReferences>
-                <externalReference>
-                  <type>vulnerability-assertion</type>
-                  <url>https://jspwiki.apache.org/cyclonedx/vdr.xml</url>
-                </externalReference>
-              </externalReferences>
-              <outputFormat>xml</outputFormat>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-
-    <pluginManagement> <!-- defines what configuration is going to be used if, and only if, the plugin is used                          -->
-      <plugins>        <!-- ordered alphabetically by groupId (default first):artifactId                                                -->
-        <plugin>       <!-- default maven plugins have their version configured to make the build independent of the maven version used -->
-          <artifactId>maven-antrun-plugin</artifactId>
-          <version>${plugin.antrun.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-assembly-plugin</artifactId>
-          <version>${plugin.assembly.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-clean-plugin</artifactId>
-          <version>${plugin.clean.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-compiler-plugin</artifactId>
-          <version>${plugin.compiler.version}</version>
-          <configuration>
-            <encoding>${project.build.sourceEncoding}</encoding>
-            <source>${jdk.version}</source>
-            <target>${jdk.version}</target>
-            <release>${jdk.version}</release>
-            <compilerArgs>
-              <arg>-Xlint:deprecation</arg>
-              <arg>-parameters</arg>
-            </compilerArgs>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-dependency-plugin</artifactId>
-          <version>${plugin.dependency.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-enforcer-plugin</artifactId>
-          <version>${plugin.enforcer.version}</version>
-          <configuration>
-            <fail>true</fail>
-            <rules>
-              <requireJavaVersion>
-                <message>MUST USE JDK ${jdk.version}</message>
-                <version>${jdk.version}</version>
-              </requireJavaVersion>
-              <requireMavenVersion>
-                <message>BUILD REQUIRES MAVEN ${maven.version}</message>
-                <version>[${maven.version},)</version>
-              </requireMavenVersion>
-            </rules>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-failsafe-plugin</artifactId>
-          <version>${plugin.failsafe.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-install-plugin</artifactId>
-          <version>${plugin.install.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-javadoc-plugin</artifactId>
-          <version>${plugin.javadoc.version}</version>
-          <configuration>
-            <additionalOptions>
-              <additionalOption>-Xdoclint:none</additionalOption>
-              <additionalOption>--allow-script-in-comments</additionalOption>
-            </additionalOptions>
-            <bottom>Copyright (c) {inceptionYear}-{currentYear} ${project.organization.name}. All rights reserved.</bottom>
-            <breakiterator>true</breakiterator>
-            <detectJavaApiLink>false</detectJavaApiLink>
-            <doclet>nl.talsmasoftware.umldoclet.UMLDoclet</doclet>
-            <docletArtifact>
-              <groupId>nl.talsmasoftware</groupId>
-              <artifactId>umldoclet</artifactId>
-              <version>${jdk.javadoc.doclet.version}</version>
-              <classifier>full</classifier>
-            </docletArtifact>
-            <linksource>true</linksource>
-            <release>${jdk.version}</release>
-            <sourcetab>4</sourcetab>
-            <quiet>true</quiet>
-            <useStandardDocletOptions>true</useStandardDocletOptions>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-jar-plugin</artifactId>
-          <version>${plugin.jar.version}</version>
-          <configuration>
-            <archive>
-              <manifest>
-                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
-                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
-              </manifest>
-              <manifestEntries>
-                <Extension-Name>${project.artifactId}</Extension-Name>
-              </manifestEntries>
-            </archive>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-jxr-plugin</artifactId>
-          <version>${plugin.jxr.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-project-info-reports-plugin</artifactId>
-          <version>${plugin.project-info-reports.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-release-plugin</artifactId>
-          <version>${plugin.release.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-remote-resources-plugin</artifactId>
-          <version>${plugin.remote-resources.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-resources-plugin</artifactId>
-          <version>${plugin.resources.version}</version>
-          <configuration>
-            <encoding>${project.build.sourceEncoding}</encoding>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-source-plugin</artifactId>
-          <version>${plugin.source.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-surefire-plugin</artifactId>
-          <version>${plugin.surefire.version}</version>
-          <configuration>
-            <argLine>@{argLine}</argLine>
-            <consoleOutputReporter>
-              <disable>${plugin.surefire.junit5-tree-reporter.enable-console}</disable>
-            </consoleOutputReporter>
-            <reportFormat>plain</reportFormat>
-            <statelessTestsetInfoReporter implementation="org.apache.maven.plugin.surefire.extensions.junit5.JUnit5StatelessTestsetInfoTreeReporter">
-              <printStacktraceOnError>true</printStacktraceOnError>
-              <printStacktraceOnFailure>true</printStacktraceOnFailure>
-              <printStderrOnError>true</printStderrOnError>
-              <printStdoutOnError>true</printStdoutOnError>
-              <printStdoutOnFailure>true</printStdoutOnFailure>
-            </statelessTestsetInfoReporter>
-            <systemPropertyVariables>
-              <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
-            </systemPropertyVariables>
-          </configuration>
-          <dependencies>
+    <parent>
+        <groupId>org.apache</groupId>
+        <artifactId>apache</artifactId>
+        <version>39</version>
+    </parent>
+
+    <groupId>org.apache.jspwiki</groupId>
+    <artifactId>jspwiki-builder</artifactId>
+    <modelVersion>4.0.0</modelVersion>
+    <name>Apache JSPWiki</name>
+    <version>3.0.1-SNAPSHOT</version>
+    <packaging>pom</packaging>
+    <description>Apache JSPWiki is a leading open source WikiWiki engine, feature-rich
+        and built around standard JEE components (Java, servlets, JSP).</description>
+    <inceptionYear>2001</inceptionYear>
+    <url>https://jspwiki.apache.org/</url>
+
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <project.build.outputTimestamp>2026-08-16T18:19:17Z</project.build.outputTimestamp>
+        <!-- will be changed by release plugin during releases -->
+        <jdk.version>17</jdk.version>
+        <jdk.javadoc.doclet.version>2.3.2</jdk.javadoc.doclet.version>
+        <maven.version>3.5</maven.version>
+
+        <akismet-java.version>1.0.0</akismet-java.version>
+        <awaitility.version>4.3.0</awaitility.version>
+        <aws-java-sdk-kendra.version>1.12.797</aws-java-sdk-kendra.version>
+        <commons-codec.version>1.22.1</commons-codec.version>
+        <commons-collections.version>4.6.0</commons-collections.version>
+        <commons-fileupload.version>2.0.0-M5</commons-fileupload.version>
+        <commons-io.version>2.22.0</commons-io.version>
+        <commons-lang.version>3.20.0</commons-lang.version>
+        <commons-net.version>3.13.0</commons-net.version>
+        <commons-text.version>1.15.0</commons-text.version>
+        <commons-validator.version>1.11.0</commons-validator.version>
+        <ehcache.version>2.10.9.2</ehcache.version>
+        <flexmark.version>0.64.8</flexmark.version>
+        <freshcookies-security.version>0.60</freshcookies-security.version>
+        <gson.version>2.13.2</gson.version>
+        <hsqldb.version>2.7.4</hsqldb.version>
+        <jackson-version>3.2.2</jackson-version>
+        <jakarta-activation.version>2.0.1</jakarta-activation.version>
+        <jakarta-activation-api.version>2.1.4</jakarta-activation-api.version>
+        <jakarta-jsp-api.version>4.0.0</jakarta-jsp-api.version>
+        <jakarta-jstl.version>3.0.1</jakarta-jstl.version>
+        <jakarta-jstl-api.version>3.0.2</jakarta-jstl-api.version>
+        <jakarta-mail.version>2.0.2</jakarta-mail.version>
+        <jakarta-mail-api.version>2.1.5</jakarta-mail-api.version>
+        <jakarta-servlet-api.version>6.1.0</jakarta-servlet-api.version>
+        <java-diff-utils-version>4.16</java-diff-utils-version>
+        <jacoco-version>0.8.14</jacoco-version>
+        <jamm.version>0.4.0</jamm.version>
+        <jaxen.version>2.0.0</jaxen.version>
+        <javax-mail.version>2.0.2</javax-mail.version>
+        <javax-jsp-api.version>2.3.3</javax-jsp-api.version>
+        <jdom2.version>2.0.6</jdom2.version>
+        <jrcs-diff.version>0.4.2</jrcs-diff.version>
+        <junit.version>6.1.3</junit.version>
+        <log4j2.version>2.26.1</log4j2.version>
+        <lucene.version>9.12.2</lucene.version>
+        <mockito.version>5.20.0</mockito.version>
+        <nekohtml.version>2.1.3</nekohtml.version>
+        <oro.version>2.0.8</oro.version>
+        <rome.version>2.1.0</rome.version>
+        <sandler.version>0.5</sandler.version>
+        <selenide.version>7.18.1</selenide.version>
+        <slf4j.version>2.0.18</slf4j.version>
+        <tika.version>3.3.2</tika.version>
+        <tomcat.version>10.1.60</tomcat.version>
+        <xmlrpc.version>2.0.1</xmlrpc.version>
+        <xstream.version>1.4.21</xstream.version>
+
+        <plugin.antrun.version>3.2.0</plugin.antrun.version>
+        <plugin.assembly.version>3.8.0</plugin.assembly.version>
+        <plugin.clean.version>3.5.0</plugin.clean.version>
+        <plugin.compiler.version>3.16.0</plugin.compiler.version>
+        <plugin.dependency.version>3.11.0</plugin.dependency.version>
+        <plugin.enforcer.version>3.6.3</plugin.enforcer.version>
+        <plugin.failsafe.version>3.6.0</plugin.failsafe.version>
+        <plugin.install.version>3.2.0</plugin.install.version>
+        <plugin.jar.version>3.5.1</plugin.jar.version>
+        <plugin.javadoc.version>3.12.0</plugin.javadoc.version>
+        <plugin.jxr.version>3.6.0</plugin.jxr.version>
+        <plugin.project-info-reports.version>3.9.0</plugin.project-info-reports.version>
+        <plugin.release.version>3.3.1</plugin.release.version>
+        <plugin.remote-resources.version>3.3.0</plugin.remote-resources.version>
+        <plugin.resources.version>3.5.0</plugin.resources.version>
+        <plugin.source.version>3.4.0</plugin.source.version>
+        <plugin.surefire.version>3.6.0</plugin.surefire.version>
+        <plugin.surefire.junit5-tree-reporter.version>1.5.1</plugin.surefire.junit5-tree-reporter.version>
+        <plugin.surefire.junit5-tree-reporter.enable-console>false</plugin.surefire.junit5-tree-reporter.enable-console>
+        <plugin.war.version>3.5.1</plugin.war.version>
+        <plugin.inmemdb.version>1.4.3</plugin.inmemdb.version>
+        <plugin.jspc.version>5.0.0</plugin.jspc.version>
+        <plugin.build-helper.version>3.6.1</plugin.build-helper.version>
+        <plugin.checksum.version>1.11</plugin.checksum.version>
+        <plugin.jslint.version>1.0.1</plugin.jslint.version>
+        <plugin.cargo.version>1.10.28</plugin.cargo.version>
+        <plugin.clirr.version>2.8</plugin.clirr.version>
+        <plugin.cyclonedx.version>2.9.3</plugin.cyclonedx.version>
+        <plugin.sonar.version>5.3.0.6276</plugin.sonar.version>
+        <plugin.sonar-report.version>0.1</plugin.sonar-report.version>
+        <plugin.wro4j.version>2.1.1</plugin.wro4j.version>
+        <plugin.eclipse-lifecycle-mapping.version>1.0.0</plugin.eclipse-lifecycle-mapping.version>
+        <maven.compiler.source>${jdk.version}</maven.compiler.source> <!-- override values from parent pom -->
+        <maven.compiler.target>${jdk.version}</maven.compiler.target>
+        <minimize>true</minimize> <!-- wro4j compression -->
+    </properties>
+
+    <scm>
+        <connection>scm:git:https://github.com/apache/jspwiki.git</connection>
+        <developerConnection>scm:git:https://github.com/apache/jspwiki.git</developerConnection>
+        <url>https://github.com/apache/jspwiki</url>
+        <tag>2.12.1-RC1</tag>
+    </scm>
+
+    <modules>
+        <module>jspwiki-wikipages</module>
+        <module>jspwiki-util</module>
+        <module>jspwiki-event</module>
+        <module>jspwiki-api</module>
+        <module>jspwiki-bootstrap</module>
+        <module>jspwiki-cache</module>
+        <module>jspwiki-http</module>
+        <module>jspwiki-wysiwyg</module>
+        <module>jspwiki-main</module>
+        <module>jspwiki-markdown</module>
+        <module>jspwiki-tika-searchprovider</module>
+        <module>jspwiki-kendra-searchprovider</module>
+        <module>jspwiki-plugins</module>
+        <module>jspwiki-https-enabler</module>
+        <module>jspwiki-210-test-adaptees</module>
+        <module>jspwiki-210-adapters</module>
+        <module>jspwiki-war</module>
+        <module>jspwiki-war-https</module>
+        <module>jspwiki-portable</module>
+        <module>jspwiki-it-tests</module><!-- IT tests are launched only if -Pintegration-tests is given -->
+        <module>jspwiki-bom</module>
+    </modules>
+
+    <dependencyManagement> <!-- defines what configuration is going to be used if, and only if, the dependency is used -->
+        <dependencies>
+            <!-- ordered alphabetically by scope:groupId:artifactId -->
+            <!-- compile dependencies -->
             <dependency>
-              <groupId>me.fabriciorby</groupId>
-              <artifactId>maven-surefire-junit5-tree-reporter</artifactId>
-              <version>${plugin.surefire.junit5-tree-reporter.version}</version>
+                <groupId>com.amazonaws</groupId>
+                <artifactId>aws-java-sdk-kendra</artifactId>
+                <version>${aws-java-sdk-kendra.version}</version>
             </dependency>
-          </dependencies>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-surefire-report-plugin</artifactId>
-          <version>${plugin.surefire.version}</version>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-war-plugin</artifactId>
-          <version>${plugin.war.version}</version>
-          <configuration>
-            <archive>
-              <manifest>
-                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
-                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
-              </manifest>
-              <manifestEntries>
-                <Extension-Name>${project.artifactId}</Extension-Name>
-                <Implementation-Version>${project.version}</Implementation-Version>
-                <Specification-Version>${project.version}</Specification-Version>
-              </manifestEntries>
-            </archive>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <groupId>com.btmatthews.maven.plugins.inmemdb</groupId>
-          <artifactId>inmemdb-maven-plugin</artifactId>
-          <version>${plugin.inmemdb.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>io.leonard.maven.plugins</groupId>
-          <artifactId>jspc-maven-plugin</artifactId>
-          <version>${plugin.jspc.version}</version>
-          <configuration>
-            <compilerVersion>${jdk.version}</compilerVersion>
-            <generatedClasses>${project.build.directory}/ignore</generatedClasses> <!-- only check JSPs are well-formed -->
-            <keepSources>true</keepSources>
-            <stopAtFirstError>false</stopAtFirstError>
-          </configuration>
-          <executions>
-            <execution>
-              <id>check-jsps-are-well-formed</id>
-              <goals>
-                <goal>compile</goal>
-              </goals>
-            </execution>
-          </executions>
-        </plugin>
-
-        <plugin>
-          <groupId>net.nicoulaj.maven.plugins</groupId>
-          <artifactId>checksum-maven-plugin</artifactId>
-          <version>${plugin.checksum.version}</version>
-          <executions>
-            <execution>
-              <goals>
-                <goal>artifacts</goal>
-              </goals>
-            </execution>
-          </executions>
-          <configuration>
-            <algorithms>
-              <algorithm>SHA-512</algorithm>
-            </algorithms>
-          </configuration>
-        </plugin>
-
-        <!-- wro4j Web Resource Optimizer for Java (http://http://code.google.com/p/wro4j/)
-          Merge and compress CSS and JS files using the WRO4J.
-          - use UglifyJS for JS compression
-          - use Less as advanced CSS preprocessor
-        -->
-        <plugin>
-          <groupId>ro.isdc.wro4j</groupId>
-          <artifactId>wro4j-maven-plugin</artifactId>
-          <version>${plugin.wro4j.version}</version>
-          <configuration>
-            <contextFolder>${project.basedir}/src/main/</contextFolder>
-            <extraConfigFile>${project.basedir}/src/main/config/wro/wro.properties</extraConfigFile>
-            <minimize>${minimize}</minimize>
-            <jsDestinationFolder>${project.build.directory}/generated-sources/wro/scripts</jsDestinationFolder>
-            <wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
-          </configuration>
-          <dependencies><!-- https://github.com/wro4j/wro4j/issues/1039#issuecomment-382474533 -->
+
             <dependency>
-              <groupId>org.mockito</groupId>
-              <artifactId>mockito-core</artifactId>
-              <version>${mockito.version}</version>
+                <groupId>com.codeborne</groupId>
+                <artifactId>selenide</artifactId>
+                <version>${selenide.version}</version>
             </dependency>
-          </dependencies>
-        </plugin>
-
-        <plugin>
-          <groupId>org.codehaus.mojo</groupId>
-          <artifactId>build-helper-maven-plugin</artifactId>
-          <version>${plugin.build-helper.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>org.codehaus.mojo</groupId>
-          <artifactId>jslint-maven-plugin</artifactId>
-          <version>${plugin.jslint.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>org.apache.rat</groupId>
-          <artifactId>apache-rat-plugin</artifactId>
-          <configuration>
-            <excludes>
-              <exclude>.gitignore</exclude>                                     <!-- git exclusions -->
-              <exclude>**/src/main/config/doc/LICENSE.*</exclude>               <!-- 3rd party License files -->
-              <exclude>**/src/main/config/wikipages/**</exclude>                <!-- Default wikipages -->
-              <exclude>**/src/main/config/dev/OldChangeLog</exclude>            <!-- ChangeLog excluded by default, this is, well, an old ChangeLog -->
-              <exclude>**/src/main/resources/META-INF/services/*</exclude>      <!-- Java SPI implementations files -->
-              <exclude>**/src/main/scripts/posteditor.js</exclude>              <!-- minified file -->
-              <exclude>**/src/main/scripts/wiki-wysiwyg/**</exclude>            <!-- MooEditable src, MIT licensed -->
-              <exclude>**/src/main/scripts/moo-extend/Request.File.js</exclude> <!-- MIT licensed -->
-              <exclude>**/src/main/styles/haddock/fontjspwiki/**</exclude>      <!-- MIT/OFL licensed -->
-              <exclude>**/src/main/webapp/templates/haddock/fonts/FontJspwiki.*</exclude><!-- MIT/OFL licensed -->
-              <exclude>**/src/main/webapp/templates/reader/fonts/FontJspwiki.*</exclude> <!-- MIT/OFL licensed -->
-              <exclude>**/src/main/webapp/scripts/mooeditable/**</exclude>      <!-- MooEditable src, MIT licensed -->
-              <exclude>**/src/main/webapp/scripts/*.js</exclude>                <!-- minified files -->
-              <exclude>**/src/main/scripts/lib/*.js</exclude>                   <!-- 3rd party js files -->
-              <exclude>**/src/test/resources/META-INF/services/*</exclude>      <!-- Java SPI implementations files -->
-              <exclude>**/src/test/resources/TextFormattingRules.txt</exclude>  <!-- test input data -->
-              <exclude>**/src/test/resources/test-repo/*.txt</exclude>          <!-- web tests input data -->
-              <exclude>**/src/main/webapp/templates/default/images/SilkIconSet-readme.txt</exclude> <!-- license, required by Silk Icon set cfr. NOTICE, LICENSE, etc. -->
-              <exclude>**/PkgInfo</exclude>  <!-- PkgInfo files, per http://docs.oracle.com/cd/E19683-01/816-0219/6m6njqbat/index.html doesn't seem to accept comments -->
-              <exclude>jspwiki-kendra-searchprovider/src/main/resources/org/apache/wiki/search/kendra/content_types.json</exclude> <!-- Json File -->
-              <exclude>**/.eslintrc</exclude> <!-- Json File -->
-              <exclude>**src/main/styles/haddock/bootstrap/**</exclude>
-              <exclude>**src/main/styles/haddock/default/*.crunch</exclude>
-              <exclude>**/src/main/webapp/templates/default/fonts/*.svg</exclude>
-              <exclude>**/src/main/webapp/templates/210/images/SilkIconSet-readme.txt</exclude>
-              <exclude>**/src/main/webapp/favicons/*.svg</exclude>
-              <exclude>**/src/overlay/launchers/tomcat/woas.app/Contents/*.plist</exclude>
-              <exclude>**/src/overlay/launchers/tomcat/woas.app/Contents/Resources/*.none</exclude>
-              <exclude>**/.eslintrc</exclude>
-
-            </excludes>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <groupId>org.codehaus.cargo</groupId>
-          <artifactId>cargo-maven3-plugin</artifactId>
-          <version>${plugin.cargo.version}</version>
-          <configuration>
-            <container>
-              <!-- https://codehaus-cargo.github.io/cargo/Maven2+Plugin+Reference+Guide.html#Maven2PluginReferenceGuide-container -->
-              <containerId>tomcat10x</containerId>
-              <zipUrlInstaller>
-                <url>https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/${tomcat.version}/tomcat-${tomcat.version}.zip</url>
-              </zipUrlInstaller>
-              <!-- <output>${project.build.directory}/tomcat9x/logs/container.log</output> -->
-              <systemProperties>
-                <user.language>en</user.language>
-                <user.region>US</user.region>
-              </systemProperties>
-            </container>
-            <configuration>
-              <type>standalone</type>
-              <home>${project.build.directory}/tomcat10x</home>
-              <properties>
-                <cargo.protocol>http</cargo.protocol>
-                <cargo.servlet.port>8080</cargo.servlet.port>
-                <!--example for cargo plugin with https-->
-                <!--
-                <cargo.protocol>https</cargo.protocol>
-                <cargo.servlet.port>8443</cargo.servlet.port>
-                <cargo.tomcat.httpSecure>true</cargo.tomcat.httpSecure>
-                <cargo.tomcat.connector.sslProtocol>TLS</cargo.tomcat.connector.sslProtocol>
-                <cargo.tomcat.connector.keystoreFile>${project.basedir}/../jspwiki-portable/src/overlay/tomcat/conf/test-use-only.p12</cargo.tomcat.connector.keystoreFile>
-                <cargo.tomcat.connector.keystorePass></cargo.tomcat.connector.keystorePass>
-                -->
-                <cargo.jvmargs>-Xms256m -Xmx3072m -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 -XX:+DisableExplicitGC -Xverify:none -Djava.awt.headless=true</cargo.jvmargs>
-              </properties>
-            </configuration>
-            <!-- <deployables>
-              <deployable>
-                <groupId>${project.groupId}</groupId>
-                <artifactId>jspwiki-war</artifactId>
-                <type>war</type>
-                <properties>
-                  <context>/JSPWiki</context>
-                </properties>
-              </deployable>
-            </deployables> -->
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <groupId>org.codehaus.mojo</groupId>
-          <artifactId>clirr-maven-plugin</artifactId>
-          <version>${plugin.clirr.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>org.cyclonedx</groupId>
-          <artifactId>cyclonedx-maven-plugin</artifactId>
-          <version>${plugin.cyclonedx.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>org.sonarsource.scanner.maven</groupId>
-          <artifactId>sonar-maven-plugin</artifactId>
-          <version>${plugin.sonar.version}</version>
-        </plugin>
-
-        <plugin>
-          <groupId>org.codehaus.sonar-plugins</groupId>
-          <artifactId>maven-report</artifactId>
-          <version>${plugin.sonar-report.version}</version>
-        </plugin>
-
-        <plugin>
-            <groupId>org.jacoco</groupId>
-            <artifactId>jacoco-maven-plugin</artifactId>
-            <version>${jacoco-version}</version>
-            <executions>
-                <execution>
-                    <id>coverage-initialize</id>
-                    <goals>
-                        <goal>prepare-agent</goal>
-                    </goals>
-                </execution>
-                <execution>
-                    <id>coverage-report</id>
-                    <phase>post-integration-test</phase>
-                    <goals>
-                        <goal>report</goal>
-                    </goals>
-                </execution>
-            </executions>
-        </plugin>
-      </plugins>
-    </pluginManagement>
-  </build>
-
-  <profiles>
-    <profile>
-      <id>build-wikipages-zips</id>
-      <activation>
-        <file>
-          <exists>../assembly/zip.xml</exists>
-        </file>
-      </activation>
-      <build>       <!-- apache-release from project's parent pom enables assembly plugin on all modules, so to build the -->
-        <plugins>   <!-- wikipages zip we must fall back to invoke it on each wikipage submodule. In order to reuse some  -->
-          <plugin>  <!-- build logic, we use a custom profile. Cfr with property on each jspwiki-wikipages submodule.     -->
-            <artifactId>maven-assembly-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>create-wikipages-zip</id>
-                <phase>package</phase>
-                <goals><goal>single</goal></goals>
-                <configuration>
-                  <descriptors>
-                    <descriptor>../assembly/zip.xml</descriptor>
-                  </descriptors>
-                </configuration>
-              </execution>
-              <execution>
-                <id>create-markdown-wikipages-zip</id>
-                <phase>package</phase>
-                <goals><goal>single</goal></goals>
-                <configuration>
-                  <descriptors>
-                    <descriptor>../assembly/zip-markdown.xml</descriptor>
-                  </descriptors>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-
-    <profile> <!-- attach additional artifacts to build lifecycle -->
-      <id>attach-additional-artifacts</id>
-
-      <activation>
-        <property>
-          <name>additional_artifacts</name>
-          <value>true</value>
-        </property>
-      </activation>
-
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-source-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>artifact-sources</id>
-                <phase>package</phase>
-                <goals>
-                  <goal>jar-no-fork</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-
-          <plugin>
-            <artifactId>maven-javadoc-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>artifact-javadocs</id>
-                <phase>package</phase>
-                <goals>
-                  <goal>jar</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-
-    <profile> <!-- enable memory profiling -->
-      <id>mem-profiling</id>
-
-      <activation>
-        <property>
-          <name>test</name>
-          <value>MemoryProfiling</value>
-        </property>
-      </activation>
-
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-dependency-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>dependencies-as-properties</id>
-                <goals><goal>properties</goal></goals>
-              </execution>
-            </executions>
-          </plugin>
-
-          <plugin>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <configuration>
-              <argLine>@{argLine} -javaagent:${com.github.jbellis:jamm:jar}</argLine>
-              <consoleOutputReporter>
-                <disable>false</disable>
-              </consoleOutputReporter>
-              <reportFormat>plain</reportFormat>
-              <statelessTestsetInfoReporter combine.self="override" />
-            </configuration>
-          </plugin>
+
+            <dependency>
+                <groupId>commons-codec</groupId>
+                <artifactId>commons-codec</artifactId>
+                <version>${commons-codec.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>tools.jackson.core</groupId>
+                <artifactId>jackson-databind</artifactId>
+                <version>${jackson-version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>commons-net</groupId>
+                <artifactId>commons-net</artifactId>
+                <version>${commons-net.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>commons-validator</groupId>
+                <artifactId>commons-validator</artifactId>
+                <version>${commons-validator.version}</version>
+            </dependency>
+
+            <dependency><!-- https://jakartaee.github.io/mail-api/README-JakartaMail#Download_Jakarta_Mail_Release -->
+                <groupId>com.sun.mail</groupId>
+                <artifactId>jakarta.mail</artifactId>
+                <version>${jakarta-mail.version}</version>
+            </dependency>
+
+            <dependency><!-- as of 1.6.2 not included by javax.mail-api, see https://javaee.github.io/javamail/docs/COMPAT.txt -->
+                <groupId>com.sun.mail</groupId>
+                <artifactId>logging-mailhandler</artifactId>
+                <version>${javax-mail.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.google.code.gson</groupId>
+                <artifactId>gson</artifactId>
+                <version>${gson.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark-ext-attributes</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark-ext-definition</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark-ext-footnotes</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark-ext-tables</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.vladsch.flexmark</groupId>
+                <artifactId>flexmark-ext-toc</artifactId>
+                <version>${flexmark.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>commons-io</groupId>
+                <artifactId>commons-io</artifactId>
+                <version>${commons-io.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jakarta.activation</groupId>
+                <artifactId>jakarta.activation-api</artifactId>
+                <version>${jakarta-activation-api.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.sun.activation</groupId>
+                <artifactId>jakarta.activation</artifactId>
+                <version>${jakarta-activation.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jakarta.mail</groupId>
+                <artifactId>jakarta.mail-api</artifactId>
+                <version>${jakarta-mail-api.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jakarta.servlet</groupId>
+                <artifactId>jakarta.servlet-api</artifactId>
+                <version>${jakarta-servlet-api.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jakarta.servlet.jsp</groupId>
+                <artifactId>jakarta.servlet.jsp-api</artifactId>
+                <version>${jakarta-jsp-api.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jakarta.servlet.jsp.jstl</groupId>
+                <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
+                <version>${jakarta-jstl-api.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>io.github.java-diff-utils</groupId>
+                <artifactId>java-diff-utils</artifactId>
+                <version>${java-diff-utils-version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>jaxen</groupId>
+                <artifactId>jaxen</artifactId>
+                <version>${jaxen.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.rometools</groupId>
+                <artifactId>rome</artifactId>
+                <version>${rome.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>net.thauvin.erik</groupId>
+                <artifactId>akismet-kotlin</artifactId>
+                <version>${akismet-java.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>net.sourceforge</groupId>
+                <artifactId>sandler</artifactId>
+                <version>${sandler.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>net.sf.ehcache</groupId>
+                <artifactId>ehcache</artifactId>
+                <version>${ehcache.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-collections4</artifactId>
+                <version>${commons-collections.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-fileupload2-javax</artifactId>
+                <version>${commons-fileupload.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-fileupload2-jakarta-servlet6</artifactId>
+                <version>${commons-fileupload.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-lang3</artifactId>
+                <version>${commons-lang.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.commons</groupId>
+                <artifactId>commons-text</artifactId>
+                <version>${commons-text.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-api</artifactId>
+                <version>${log4j2.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-core</artifactId>
+                <version>${log4j2.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-1.2-api</artifactId>
+                <version>${log4j2.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.logging.log4j</groupId>
+                <artifactId>log4j-slf4j-impl</artifactId>
+                <version>${log4j2.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-analysis-common</artifactId>
+                <version>${lucene.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-backward-codecs</artifactId>
+                <version>${lucene.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-highlighter</artifactId>
+                <version>${lucene.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.lucene</groupId>
+                <artifactId>lucene-queryparser</artifactId>
+                <version>${lucene.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.tika</groupId>
+                <artifactId>tika-core</artifactId>
+                <version>${tika.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.tika</groupId>
+                <artifactId>tika-parsers-standard-package</artifactId>
+                <version>${tika.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.codelibs</groupId>
+                <artifactId>nekohtml</artifactId>
+                <version>${nekohtml.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.freshcookies</groupId>
+                <artifactId>freshcookies-security</artifactId>
+                <version>${freshcookies-security.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.glassfish.web</groupId>
+                <artifactId>jakarta.servlet.jsp.jstl</artifactId>
+                <version>${jakarta-jstl.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.jdom</groupId>
+                <artifactId>jdom2</artifactId>
+                <version>${jdom2.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-api</artifactId>
+                <version>${slf4j.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.slf4j</groupId>
+                <artifactId>slf4j-log4j12</artifactId>
+                <version>${slf4j.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>oro</groupId>
+                <artifactId>oro</artifactId>
+                <version>${oro.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>xmlrpc</groupId>
+                <artifactId>xmlrpc</artifactId>
+                <version>${xmlrpc.version}</version>
+            </dependency>
+
+            <!-- test dependencies -->
+            <dependency>
+                <groupId>com.github.jbellis</groupId>
+                <artifactId>jamm</artifactId>
+                <version>${jamm.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.awaitility</groupId>
+                <artifactId>awaitility</artifactId>
+                <version>${awaitility.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.hsqldb</groupId>
+                <artifactId>hsqldb</artifactId>
+                <version>${hsqldb.version}</version>
+                <classifier>jdk8</classifier>
+            </dependency>
+
+            <dependency>
+                <groupId>org.hsqldb</groupId>
+                <artifactId>sqltool</artifactId>
+                <version>${hsqldb.version}</version>
+                <classifier>jdk8</classifier>
+            </dependency>
+
+            <dependency>
+                <groupId>org.junit</groupId>
+                <artifactId>junit-bom</artifactId>
+                <version>${junit.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+
+            <dependency>
+                <groupId>org.mockito</groupId>
+                <artifactId>mockito-core</artifactId>
+                <version>${mockito.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.mockito</groupId>
+                <artifactId>mockito-junit-jupiter</artifactId>
+                <version>${mockito.version}</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <build>
+        <defaultGoal>verify apache-rat:check</defaultGoal>
+        <plugins>  <!-- plugins executed with every build -->
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>enforcer-validations</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <groupId>net.nicoulaj.maven.plugins</groupId>
+                <artifactId>checksum-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.jacoco</groupId>
+                <artifactId>jacoco-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.cyclonedx</groupId>
+                <artifactId>cyclonedx-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>generate-sbom</id>
+                        <goals>
+                            <goal>makeAggregateBom</goal>
+                        </goals>
+                        <phase>package</phase>
+                        <configuration>
+                            <externalReferences>
+                                <externalReference>
+                                    <type>vulnerability-assertion</type>
+                                    <url>https://jspwiki.apache.org/cyclonedx/vdr.xml</url>
+                                </externalReference>
+                            </externalReferences>
+                            <outputFormat>xml</outputFormat>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
-      </build>
-    </profile>
-
-	<profile>
-	  <id>m2e</id>
-      <!-- This profile is only active when the property "m2e.version"
-        is set, which is the case when building in Eclipse with m2e. -->
-      <activation>
-        <property>
-          <name>m2e.version</name>
-        </property>
-      </activation>
-
-	  <build>
-	    <pluginManagement>
-		  <plugins>
-		    <plugin>
-              <groupId>org.eclipse.m2e</groupId>
-              <artifactId>lifecycle-mapping</artifactId>
-              <version>${plugin.eclipse-lifecycle-mapping.version}</version>
-              <configuration>
-                <lifecycleMappingMetadata>
-                  <pluginExecutions>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
-                        <groupId>io.leonard.maven.plugins</groupId>
-                        <artifactId>jspc-maven-plugin</artifactId>
-                        <versionRange>[2.4.6,)</versionRange>
-                        <goals><goal>compile</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
-                        <groupId>net.alchim31.maven</groupId>
-                        <artifactId>yuicompressor-maven-plugin</artifactId>
-                        <versionRange>[1.3.2,)</versionRange>
-                        <goals><goal>compress</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
+
+        <pluginManagement> <!-- defines what configuration is going to be used if, and only if, the plugin is used                          -->
+            <plugins>        <!-- ordered alphabetically by groupId (default first):artifactId                                                -->
+                <plugin>       <!-- default maven plugins have their version configured to make the build independent of the maven version used -->
+                    <artifactId>maven-antrun-plugin</artifactId>
+                    <version>${plugin.antrun.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-assembly-plugin</artifactId>
+                    <version>${plugin.assembly.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-clean-plugin</artifactId>
+                    <version>${plugin.clean.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-compiler-plugin</artifactId>
+                    <version>${plugin.compiler.version}</version>
+                    <configuration>
+                        <encoding>${project.build.sourceEncoding}</encoding>
+                        <source>${jdk.version}</source>
+                        <target>${jdk.version}</target>
+                        <release>${jdk.version}</release>
+                        <compilerArgs>
+                            <arg>-Xlint:deprecation</arg>
+                            <arg>-parameters</arg>
+                        </compilerArgs>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-dependency-plugin</artifactId>
+                    <version>${plugin.dependency.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>${plugin.enforcer.version}</version>
+                    <configuration>
+                        <fail>true</fail>
+                        <rules>
+                            <requireJavaVersion>
+                                <message>MUST USE JDK ${jdk.version}</message>
+                                <version>${jdk.version}</version>
+                            </requireJavaVersion>
+                            <requireMavenVersion>
+                                <message>BUILD REQUIRES MAVEN ${maven.version}</message>
+                                <version>[${maven.version},)</version>
+                            </requireMavenVersion>
+                        </rules>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-failsafe-plugin</artifactId>
+                    <version>${plugin.failsafe.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-install-plugin</artifactId>
+                    <version>${plugin.install.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-javadoc-plugin</artifactId>
+                    <version>${plugin.javadoc.version}</version>
+                    <configuration>
+                        <additionalOptions>
+                            <additionalOption>-Xdoclint:none</additionalOption>
+                            <additionalOption>--allow-script-in-comments</additionalOption>
+                        </additionalOptions>
+                        <bottom>Copyright (c) {inceptionYear}-{currentYear} ${project.organization.name}. All rights reserved.</bottom>
+                        <breakiterator>true</breakiterator>
+                        <detectJavaApiLink>false</detectJavaApiLink>
+                        <doclet>nl.talsmasoftware.umldoclet.UMLDoclet</doclet>
+                        <docletArtifact>
+                            <groupId>nl.talsmasoftware</groupId>
+                            <artifactId>umldoclet</artifactId>
+                            <version>${jdk.javadoc.doclet.version}</version>
+                            <classifier>full</classifier>
+                        </docletArtifact>
+                        <linksource>true</linksource>
+                        <release>${jdk.version}</release>
+                        <sourcetab>4</sourcetab>
+                        <quiet>true</quiet>
+                        <useStandardDocletOptions>true</useStandardDocletOptions>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-jar-plugin</artifactId>
+                    <version>${plugin.jar.version}</version>
+                    <configuration>
+                        <archive>
+                            <manifest>
+                                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+                                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                            </manifest>
+                            <manifestEntries>
+                                <Extension-Name>${project.artifactId}</Extension-Name>
+                            </manifestEntries>
+                        </archive>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-jxr-plugin</artifactId>
+                    <version>${plugin.jxr.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-project-info-reports-plugin</artifactId>
+                    <version>${plugin.project-info-reports.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-release-plugin</artifactId>
+                    <version>${plugin.release.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-remote-resources-plugin</artifactId>
+                    <version>${plugin.remote-resources.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-resources-plugin</artifactId>
+                    <version>${plugin.resources.version}</version>
+                    <configuration>
+                        <encoding>${project.build.sourceEncoding}</encoding>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-source-plugin</artifactId>
+                    <version>${plugin.source.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-surefire-plugin</artifactId>
+                    <version>${plugin.surefire.version}</version>
+                    <configuration>
+                        <argLine>@{argLine}</argLine>
+                        <consoleOutputReporter>
+                            <disable>${plugin.surefire.junit5-tree-reporter.enable-console}</disable>
+                        </consoleOutputReporter>
+                        <reportFormat>plain</reportFormat>
+                        <statelessTestsetInfoReporter implementation="org.apache.maven.plugin.surefire.extensions.junit5.JUnit5StatelessTestsetInfoTreeReporter">
+                            <printStacktraceOnError>true</printStacktraceOnError>
+                            <printStacktraceOnFailure>true</printStacktraceOnFailure>
+                            <printStderrOnError>true</printStderrOnError>
+                            <printStdoutOnError>true</printStdoutOnError>
+                            <printStdoutOnFailure>true</printStdoutOnFailure>
+                        </statelessTestsetInfoReporter>
+                        <systemPropertyVariables>
+                            <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
+                        </systemPropertyVariables>
+                    </configuration>
+                    <dependencies>
+                        <dependency>
+                            <groupId>me.fabriciorby</groupId>
+                            <artifactId>maven-surefire-junit5-tree-reporter</artifactId>
+                            <version>${plugin.surefire.junit5-tree-reporter.version}</version>
+                        </dependency>
+                    </dependencies>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-surefire-report-plugin</artifactId>
+                    <version>${plugin.surefire.version}</version>
+                </plugin>
+
+                <plugin>
+                    <artifactId>maven-war-plugin</artifactId>
+                    <version>${plugin.war.version}</version>
+                    <configuration>
+                        <archive>
+                            <manifest>
+                                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+                                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                            </manifest>
+                            <manifestEntries>
+                                <Extension-Name>${project.artifactId}</Extension-Name>
+                                <Implementation-Version>${project.version}</Implementation-Version>
+                                <Specification-Version>${project.version}</Specification-Version>
+                            </manifestEntries>
+                        </archive>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <groupId>com.btmatthews.maven.plugins.inmemdb</groupId>
+                    <artifactId>inmemdb-maven-plugin</artifactId>
+                    <version>${plugin.inmemdb.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>io.leonard.maven.plugins</groupId>
+                    <artifactId>jspc-maven-plugin</artifactId>
+                    <version>${plugin.jspc.version}</version>
+                    <configuration>
+                        <compilerVersion>${jdk.version}</compilerVersion>
+                        <generatedClasses>${project.build.directory}/ignore</generatedClasses> <!-- only check JSPs are well-formed -->
+                        <keepSources>true</keepSources>
+                        <stopAtFirstError>false</stopAtFirstError>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <id>check-jsps-are-well-formed</id>
+                            <goals>
+                                <goal>compile</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+
+                <plugin>
+                    <groupId>net.nicoulaj.maven.plugins</groupId>
+                    <artifactId>checksum-maven-plugin</artifactId>
+                    <version>${plugin.checksum.version}</version>
+                    <executions>
+                        <execution>
+                            <goals>
+                                <goal>artifacts</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                    <configuration>
+                        <algorithms>
+                            <algorithm>SHA-512</algorithm>
+                        </algorithms>
+                    </configuration>
+                </plugin>
+
+                <!-- wro4j Web Resource Optimizer for Java (http://http://code.google.com/p/wro4j/)
+                  Merge and compress CSS and JS files using the WRO4J.
+                  - use UglifyJS for JS compression
+                  - use Less as advanced CSS preprocessor
+                -->
+                <plugin>
+                    <groupId>ro.isdc.wro4j</groupId>
+                    <artifactId>wro4j-maven-plugin</artifactId>
+                    <version>${plugin.wro4j.version}</version>
+                    <configuration>
+                        <contextFolder>${project.basedir}/src/main/</contextFolder>
+                        <extraConfigFile>${project.basedir}/src/main/config/wro/wro.properties</extraConfigFile>
+                        <minimize>${minimize}</minimize>
+                        <jsDestinationFolder>${project.build.directory}/generated-sources/wro/scripts</jsDestinationFolder>
+                        <wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
+                    </configuration>
+                    <dependencies><!-- https://github.com/wro4j/wro4j/issues/1039#issuecomment-382474533 -->
+                        <dependency>
+                            <groupId>org.mockito</groupId>
+                            <artifactId>mockito-core</artifactId>
+                            <version>${mockito.version}</version>
+                        </dependency>
+                    </dependencies>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>build-helper-maven-plugin</artifactId>
+                    <version>${plugin.build-helper.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>jslint-maven-plugin</artifactId>
+                    <version>${plugin.jslint.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.apache.rat</groupId>
+                    <artifactId>apache-rat-plugin</artifactId>
+                    <configuration>
+                        <excludes>
+                            <exclude>.gitignore</exclude>                                     <!-- git exclusions -->
+                            <exclude>**/src/main/config/doc/LICENSE.*</exclude>               <!-- 3rd party License files -->
+                            <exclude>**/src/main/config/wikipages/**</exclude>                <!-- Default wikipages -->
+                            <exclude>**/src/main/config/dev/OldChangeLog</exclude>            <!-- ChangeLog excluded by default, this is, well, an old ChangeLog -->
+                            <exclude>**/src/main/resources/META-INF/services/*</exclude>      <!-- Java SPI implementations files -->
+                            <exclude>**/src/main/scripts/posteditor.js</exclude>              <!-- minified file -->
+                            <exclude>**/src/main/scripts/wiki-wysiwyg/**</exclude>            <!-- MooEditable src, MIT licensed -->
+                            <exclude>**/src/main/scripts/moo-extend/Request.File.js</exclude> <!-- MIT licensed -->
+                            <exclude>**/src/main/styles/haddock/fontjspwiki/**</exclude>      <!-- MIT/OFL licensed -->
+                            <exclude>**/src/main/webapp/templates/haddock/fonts/FontJspwiki.*</exclude><!-- MIT/OFL licensed -->
+                            <exclude>**/src/main/webapp/templates/reader/fonts/FontJspwiki.*</exclude> <!-- MIT/OFL licensed -->
+                            <exclude>**/src/main/webapp/scripts/mooeditable/**</exclude>      <!-- MooEditable src, MIT licensed -->
+                            <exclude>**/src/main/webapp/scripts/*.js</exclude>                <!-- minified files -->
+                            <exclude>**/src/main/scripts/lib/*.js</exclude>                   <!-- 3rd party js files -->
+                            <exclude>**/src/test/resources/META-INF/services/*</exclude>      <!-- Java SPI implementations files -->
+                            <exclude>**/src/test/resources/TextFormattingRules.txt</exclude>  <!-- test input data -->
+                            <exclude>**/src/test/resources/test-repo/*.txt</exclude>          <!-- web tests input data -->
+                            <exclude>**/src/main/webapp/templates/default/images/SilkIconSet-readme.txt</exclude> <!-- license, required by Silk Icon set cfr. NOTICE, LICENSE, etc. -->
+                            <exclude>**/PkgInfo</exclude>  <!-- PkgInfo files, per http://docs.oracle.com/cd/E19683-01/816-0219/6m6njqbat/index.html doesn't seem to accept comments -->
+                            <exclude>jspwiki-kendra-searchprovider/src/main/resources/org/apache/wiki/search/kendra/content_types.json</exclude> <!-- Json File -->
+                            <exclude>**/.eslintrc</exclude> <!-- Json File -->
+                            <exclude>**src/main/styles/haddock/bootstrap/**</exclude>
+                            <exclude>**src/main/styles/haddock/default/*.crunch</exclude>
+                            <exclude>**/src/main/webapp/templates/default/fonts/*.svg</exclude>
+                            <exclude>**/src/main/webapp/templates/210/images/SilkIconSet-readme.txt</exclude>
+                            <exclude>**/src/main/webapp/favicons/*.svg</exclude>
+                            <exclude>**/src/overlay/launchers/tomcat/woas.app/Contents/*.plist</exclude>
+                            <exclude>**/src/overlay/launchers/tomcat/woas.app/Contents/Resources/*.none</exclude>
+                            <exclude>**/.eslintrc</exclude>
+
+                        </excludes>
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.codehaus.cargo</groupId>
+                    <artifactId>cargo-maven3-plugin</artifactId>
+                    <version>${plugin.cargo.version}</version>
+                    <configuration>
+                        <container>
+                            <!-- https://codehaus-cargo.github.io/cargo/Maven2+Plugin+Reference+Guide.html#Maven2PluginReferenceGuide-container -->
+                            <containerId>tomcat10x</containerId>
+                            <zipUrlInstaller>
+                                <url>https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/${tomcat.version}/tomcat-${tomcat.version}.zip</url>
+                            </zipUrlInstaller>
+                            <!-- <output>${project.build.directory}/tomcat9x/logs/container.log</output> -->
+                            <systemProperties>
+                                <user.language>en</user.language>
+                                <user.region>US</user.region>
+                            </systemProperties>
+                        </container>
+                        <configuration>
+                            <type>standalone</type>
+                            <home>${project.build.directory}/tomcat10x</home>
+                            <properties>
+                                <cargo.protocol>http</cargo.protocol>
+                                <cargo.servlet.port>8080</cargo.servlet.port>
+                                <!--example for cargo plugin with https-->
+                                <!--
+                                <cargo.protocol>https</cargo.protocol>
+                                <cargo.servlet.port>8443</cargo.servlet.port>
+                                <cargo.tomcat.httpSecure>true</cargo.tomcat.httpSecure>
+                                <cargo.tomcat.connector.sslProtocol>TLS</cargo.tomcat.connector.sslProtocol>
+                                <cargo.tomcat.connector.keystoreFile>${project.basedir}/../jspwiki-portable/src/overlay/tomcat/conf/test-use-only.p12</cargo.tomcat.connector.keystoreFile>
+                                <cargo.tomcat.connector.keystorePass></cargo.tomcat.connector.keystorePass>
+                                -->
+                                <cargo.jvmargs>-Xms256m -Xmx3072m -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 -XX:+DisableExplicitGC -Xverify:none -Djava.awt.headless=true</cargo.jvmargs>
+                            </properties>
+                        </configuration>
+                        <!-- <deployables>
+                          <deployable>
+                            <groupId>${project.groupId}</groupId>
+                            <artifactId>jspwiki-war</artifactId>
+                            <type>war</type>
+                            <properties>
+                              <context>/JSPWiki</context>
+                            </properties>
+                          </deployable>
+                        </deployables> -->
+                    </configuration>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>clirr-maven-plugin</artifactId>
+                    <version>${plugin.clirr.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.cyclonedx</groupId>
+                    <artifactId>cyclonedx-maven-plugin</artifactId>
+                    <version>${plugin.cyclonedx.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.sonarsource.scanner.maven</groupId>
+                    <artifactId>sonar-maven-plugin</artifactId>
+                    <version>${plugin.sonar.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.codehaus.sonar-plugins</groupId>
+                    <artifactId>maven-report</artifactId>
+                    <version>${plugin.sonar-report.version}</version>
+                </plugin>
+
+                <plugin>
+                    <groupId>org.jacoco</groupId>
+                    <artifactId>jacoco-maven-plugin</artifactId>
+                    <version>${jacoco-version}</version>
+                    <executions>
+                        <execution>
+                            <id>coverage-initialize</id>
+                            <goals>
+                                <goal>prepare-agent</goal>
+                            </goals>
+                        </execution>
+                        <execution>
+                            <id>coverage-report</id>
+                            <phase>post-integration-test</phase>
+                            <goals>
+                                <goal>report</goal>
+                            </goals>
+                            <configuration>
+                                <formats>
+                                    <format>XML</format>
+                                    <format>HTML</format>
+                                </formats>
+                            </configuration>
+                        </execution>
+                    </executions>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+
+    <profiles>
+        <profile>
+            <id>githubjacoco</id>
+            <activation>
+                <activeByDefault>false</activeByDefault>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
                         <artifactId>maven-antrun-plugin</artifactId>
-                        <versionRange>[1.7,)</versionRange>
-                        <goals><goal>run</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
-                        <groupId>org.codehaus.mojo</groupId>
-                        <artifactId>jslint-maven-plugin</artifactId>
-                        <versionRange>[1.0.1,)</versionRange>
-                        <goals><goal>jslint</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
-                        <groupId>ro.isdc.wro4j</groupId>
-                        <artifactId>wro4j-maven-plugin</artifactId>
-                        <versionRange>[1.7.2,)</versionRange>
-                        <goals><goal>run</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                    <pluginExecution>
-                      <pluginExecutionFilter>
-                        <groupId>org.apache.maven.plugins</groupId>
+                        <executions>
+                            <execution>
+                                <phase>verify</phase>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                                <configuration>
+                                    <target>
+                                        <taskdef name="jacocoReport" classname="org.jacoco.ant.ReportTask">
+                                            <classpath path="${basedir}/target/jacoco-jars/org.jacoco.ant.jar" />
+                                        </taskdef>
+
+                                        <jacocoReport>
+                                            <executiondata>
+                                                <fileset dir="${project.basedir}">
+                                                    <include name="**/target/jacoco.exec"/>
+                                                </fileset>
+                                            </executiondata>
+                                            <structure name="JSPWiki Combined Coverage">
+                                                <classfiles>
+                                                    <dirset dir="${project.basedir}">
+                                                        <include name="jspwiki-*/target/classes"/>
+                                                    </dirset>
+                                                </classfiles>
+                                                <sourcefiles encoding="UTF-8">
+                                                    <dirset dir="${project.basedir}">
+                                                        <include name="jspwiki-*/src/main/java"/>
+                                                    </dirset>
+                                                </sourcefiles>
+                                            </structure>
+                        
+                                            <html destdir="${project.build.directory}/site/jacoco-aggregate"/>
+                                            <xml destfile="${project.build.directory}/site/jacoco-aggregate/jacoco.xml"/>
+                                            <csv destfile="${project.build.directory}/site/jacoco-aggregate/jacoco.csv"/>
+                                        </jacocoReport>
+                                    </target>
+                                </configuration>
+                            </execution>
+                        </executions>
+                        <dependencies>
+                            <dependency>
+                                <groupId>org.jacoco</groupId>
+                                <artifactId>org.jacoco.ant</artifactId>
+                                <version>${jacoco-version}</version>
+                            </dependency>
+                        </dependencies>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <profile>
+            <id>build-wikipages-zips</id>
+            <activation>
+                <file>
+                    <exists>../assembly/zip.xml</exists>
+                </file>
+            </activation>
+            <build>       <!-- apache-release from project's parent pom enables assembly plugin on all modules, so to build the -->
+                <plugins>   <!-- wikipages zip we must fall back to invoke it on each wikipage submodule. In order to reuse some  -->
+                    <plugin>  <!-- build logic, we use a custom profile. Cfr with property on each jspwiki-wikipages submodule.     -->
+                        <artifactId>maven-assembly-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>create-wikipages-zip</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>single</goal>
+                                </goals>
+                                <configuration>
+                                    <descriptors>
+                                        <descriptor>../assembly/zip.xml</descriptor>
+                                    </descriptors>
+                                </configuration>
+                            </execution>
+                            <execution>
+                                <id>create-markdown-wikipages-zip</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>single</goal>
+                                </goals>
+                                <configuration>
+                                    <descriptors>
+                                        <descriptor>../assembly/zip-markdown.xml</descriptor>
+                                    </descriptors>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile> <!-- attach additional artifacts to build lifecycle -->
+            <id>attach-additional-artifacts</id>
+
+            <activation>
+                <property>
+                    <name>additional_artifacts</name>
+                    <value>true</value>
+                </property>
+            </activation>
+
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-source-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>artifact-sources</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>jar-no-fork</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+
+                    <plugin>
+                        <artifactId>maven-javadoc-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>artifact-javadocs</id>
+                                <phase>package</phase>
+                                <goals>
+                                    <goal>jar</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile> <!-- enable memory profiling -->
+            <id>mem-profiling</id>
+
+            <activation>
+                <property>
+                    <name>test</name>
+                    <value>MemoryProfiling</value>
+                </property>
+            </activation>
+
+            <build>
+                <plugins>
+                    <plugin>
                         <artifactId>maven-dependency-plugin</artifactId>
-                        <versionRange>[2.1,)</versionRange>
-                        <goals><goal>unpack</goal></goals>
-                      </pluginExecutionFilter>
-                      <action><ignore /></action>
-                    </pluginExecution>
-                  </pluginExecutions>
-                </lifecycleMappingMetadata>
-              </configuration>
-            </plugin>
-		  </plugins>
-		</pluginManagement>
-	  </build>
-	</profile>
-  </profiles>
-
-  <organization>
-    <name>The Apache Software Foundation</name>
-    <url>http://www.apache.org/</url>
-  </organization>
-
-  <licenses>
-    <license>
-      <name>The Apache Software License, Version 2.0</name>
-      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
-      <distribution>repo</distribution>
-    </license>
-  </licenses>
-
-  <mailingLists>
-    <mailingList>
-      <name>Apache JSPWiki-dev List</name>
-      <subscribe>dev-subscribe@jspwiki.apache.org</subscribe>
-      <unsubscribe>dev-unsubscribe@jspwiki.apache.org</unsubscribe>
-      <post>dev@jspwiki.apache.org</post>
-      <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-dev/</archive>
-    </mailingList>
-
-    <mailingList>
-      <name>Apache JSPWiki-user List</name>
-      <subscribe>user-subscribe@jspwiki.apache.org</subscribe>
-      <unsubscribe>user-unsubscribe@jspwiki.apache.org</unsubscribe>
-      <post>user@jspwiki.apache.org</post>
-      <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-user/</archive>
-    </mailingList>
-
-    <mailingList>
-      <name>Apache JSPWiki-commits List</name>
-      <subscribe>commits-subscribe@jspwiki.apache.org</subscribe>
-      <unsubscribe>commits-unsubscribe@jspwiki.apache.org</unsubscribe>
-      <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-commits/</archive>
-    </mailingList>
-  </mailingLists>
-
-  <issueManagement>
-    <system>JIRA</system>
-    <url>http://issues.apache.org/jira/browse/JSPWIKI</url>
-  </issueManagement>
-
-  <ciManagement>
-    <system>Jenkins</system>
-    <url>https://builds.apache.org/job/JSPWiki</url>
-  </ciManagement>
+                        <executions>
+                            <execution>
+                                <id>dependencies-as-properties</id>
+                                <goals>
+                                    <goal>properties</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+
+                    <plugin>
+                        <artifactId>maven-surefire-plugin</artifactId>
+                        <configuration>
+                            <argLine>@{argLine} -javaagent:${com.github.jbellis:jamm:jar}</argLine>
+                            <consoleOutputReporter>
+                                <disable>false</disable>
+                            </consoleOutputReporter>
+                            <reportFormat>plain</reportFormat>
+                            <statelessTestsetInfoReporter combine.self="override" />
+                        </configuration>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile>
+            <id>m2e</id>
+            <!-- This profile is only active when the property "m2e.version"
+            is set, which is the case when building in Eclipse with m2e. -->
+            <activation>
+                <property>
+                    <name>m2e.version</name>
+                </property>
+            </activation>
+
+            <build>
+                <pluginManagement>
+                    <plugins>
+                        <plugin>
+                            <groupId>org.eclipse.m2e</groupId>
+                            <artifactId>lifecycle-mapping</artifactId>
+                            <version>${plugin.eclipse-lifecycle-mapping.version}</version>
+                            <configuration>
+                                <lifecycleMappingMetadata>
+                                    <pluginExecutions>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>io.leonard.maven.plugins</groupId>
+                                                <artifactId>jspc-maven-plugin</artifactId>
+                                                <versionRange>[2.4.6,)</versionRange>
+                                                <goals>
+                                                    <goal>compile</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>net.alchim31.maven</groupId>
+                                                <artifactId>yuicompressor-maven-plugin</artifactId>
+                                                <versionRange>[1.3.2,)</versionRange>
+                                                <goals>
+                                                    <goal>compress</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>org.apache.maven.plugins</groupId>
+                                                <artifactId>maven-antrun-plugin</artifactId>
+                                                <versionRange>[1.7,)</versionRange>
+                                                <goals>
+                                                    <goal>run</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>org.codehaus.mojo</groupId>
+                                                <artifactId>jslint-maven-plugin</artifactId>
+                                                <versionRange>[1.0.1,)</versionRange>
+                                                <goals>
+                                                    <goal>jslint</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>ro.isdc.wro4j</groupId>
+                                                <artifactId>wro4j-maven-plugin</artifactId>
+                                                <versionRange>[1.7.2,)</versionRange>
+                                                <goals>
+                                                    <goal>run</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                        <pluginExecution>
+                                            <pluginExecutionFilter>
+                                                <groupId>org.apache.maven.plugins</groupId>
+                                                <artifactId>maven-dependency-plugin</artifactId>
+                                                <versionRange>[2.1,)</versionRange>
+                                                <goals>
+                                                    <goal>unpack</goal>
+                                                </goals>
+                                            </pluginExecutionFilter>
+                                            <action>
+                                                <ignore />
+                                            </action>
+                                        </pluginExecution>
+                                    </pluginExecutions>
+                                </lifecycleMappingMetadata>
+                            </configuration>
+                        </plugin>
+                    </plugins>
+                </pluginManagement>
+            </build>
+        </profile>
+    </profiles>
+
+    <organization>
+        <name>The Apache Software Foundation</name>
+        <url>http://www.apache.org/</url>
+    </organization>
+
+    <licenses>
+        <license>
+            <name>The Apache Software License, Version 2.0</name>
+            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+            <distribution>repo</distribution>
+        </license>
+    </licenses>
+
+    <mailingLists>
+        <mailingList>
+            <name>Apache JSPWiki-dev List</name>
+            <subscribe>dev-subscribe@jspwiki.apache.org</subscribe>
+            <unsubscribe>dev-unsubscribe@jspwiki.apache.org</unsubscribe>
+            <post>dev@jspwiki.apache.org</post>
+            <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-dev/</archive>
+        </mailingList>
+
+        <mailingList>
+            <name>Apache JSPWiki-user List</name>
+            <subscribe>user-subscribe@jspwiki.apache.org</subscribe>
+            <unsubscribe>user-unsubscribe@jspwiki.apache.org</unsubscribe>
+            <post>user@jspwiki.apache.org</post>
+            <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-user/</archive>
+        </mailingList>
+
+        <mailingList>
+            <name>Apache JSPWiki-commits List</name>
+            <subscribe>commits-subscribe@jspwiki.apache.org</subscribe>
+            <unsubscribe>commits-unsubscribe@jspwiki.apache.org</unsubscribe>
+            <archive>http://mail-archives.apache.org/mod_mbox/jspwiki-commits/</archive>
+        </mailingList>
+    </mailingLists>
+
+    <issueManagement>
+        <system>JIRA</system>
+        <url>http://issues.apache.org/jira/browse/JSPWIKI</url>
+    </issueManagement>
+
+    <ciManagement>
+        <system>Jenkins</system>
+        <url>https://builds.apache.org/job/JSPWiki</url>
+    </ciManagement>
 </project>