<?xml version="1.0" encoding="UTF-8"?>
<!--
 *
 * See the NOTICE file distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
 *
-->
<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">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.celements</groupId>
  <artifactId>base-pom</artifactId>
  <version>7.0</version>
  <packaging>pom</packaging>
  <description>Celements Master Root POM</description>
  <scm>
    <connection>scm:git:git://github.com/celements/parent-poms</connection>
    <developerConnection>scm:git:git@github.com:celements/parent-poms.git</developerConnection>
    <url>https://github.com/celements/parent-poms</url>
    <tag>base-pom-7.0</tag>
  </scm>
  <properties>
    <java.version>21</java.version>
    <xwiki.version>2.7.2</xwiki.version>
    <spring.version>5.3.39</spring.version>
    <!-- Spring Security 5.7.x is API-stable branch that aligns perfectly with Spring 5.3.
    Do not upgrade to Spring Security 6+ as long as staying on Spring 5.3. -->
    <spring.security.version>5.7.14</spring.security.version>
    <spring.kafka.version>2.9.13</spring.kafka.version>
    <jackson.version>2.17.1</jackson.version>
    <jersey.version>2.47</jersey.version>
    <slf4j.version>1.7.36</slf4j.version>
    <log4j.version>2.20.0</log4j.version>
    <springdoc-openapi.version>1.8.0</springdoc-openapi.version>
    <nodejs.version>v24.11.1</nodejs.version>
    <repo.url.celements>http://maven.celements.ch</repo.url.celements>
  </properties>
  <dependencies>
  </dependencies>
  <dependencyManagement>
    <dependencies>

      <!-- XWiki -->
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-properties</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-xml</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>jdom</groupId>
            <artifactId>jdom</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-script</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.livetribe</groupId>
            <artifactId>livetribe-jsr223</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-context</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-observation-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-bridge</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-model</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-observation-local</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-cache-api</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-configuration-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-xwiki</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-configuration-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-rendering-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-query-manager</artifactId>
        <version>${xwiki.version}</version>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-query-xwql</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-observation</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-default</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-crypto</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk15</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-model</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-csrf</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-container-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-container-servlet</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-model</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-captcha</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-configuration-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-default</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-action</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-velocity</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-management</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-cache-jbosscache</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>*</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-platform-tag-api</artifactId>
        <version>${xwiki.version}</version>
      </dependency>
      <!-- XWiki syntax parsers -->
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-syntax-doxia</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-syntax-wikimodel</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-rendering-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-syntax-xwiki10</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-model</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-velocity</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-rendering-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-transformation-icon</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-rendering-transformation-wikiword</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-legacy</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Spring -->
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
      </dependency>

      <!-- Storage -->
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>3.3.2.GA</version>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-annotations</artifactId>
        <version>3.4.0.GA</version>
        <exclusions>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-commons-annotations</artifactId>
        <version>3.3.0.ga</version>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>3.4.0.GA</version>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate</artifactId>
        <version>3.2.6.ga</version>
        <exclusions>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Rendering -->
      <dependency>
        <groupId>radeox</groupId>
        <artifactId>radeox</artifactId>
        <version>1.0-b2</version>
      </dependency>

      <!-- For extracting metadata from various document types -->
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-core</artifactId>
        <version>1.28.5</version>
      </dependency>
      <dependency>
        <!-- IMPORTANT: includes transitive dependency 'poi-ooxml-4.0.1' on tika upgrade match other
        existing versions accordingly -->
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parsers</artifactId>
        <version>1.28.5</version>
        <exclusions>
          <!-- exclude asm, it is already included in hibernate -->
          <exclusion>
            <groupId>org.ow2.asm</groupId>
            <artifactId>asm</artifactId>
          </exclusion>
          <exclusion>
            <!--  exclude CXF since we're already including Jersey as JAX-RS implementation -->
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-rs-client</artifactId>
          </exclusion>
          <exclusion>
            <!--  exclude quartz since we're already including it in celements-scheduler -->
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.tallison</groupId>
            <artifactId>metadata-extractor</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>jul-to-slf4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-csv</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>jdom</groupId>
            <artifactId>jdom</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.glassfish.jaxb</groupId>
            <artifactId>jaxb-runtime</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <!-- match version with tika-parsers -->
        <groupId>org.tallison</groupId>
        <artifactId>metadata-extractor</artifactId>
        <version>2.17.1.0</version>
      </dependency>
      <dependency>
        <!-- match version with tika-parsers -->
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>jbig2-imageio</artifactId>
        <version>3.0.4</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avalon.framework</groupId>
        <artifactId>avalon-framework-api</artifactId>
        <version>4.3.1</version>
      </dependency>
      <dependency>
        <groupId>org.apache.avalon.framework</groupId>
        <artifactId>avalon-framework-impl</artifactId>
        <version>4.3.1</version>
      </dependency>
      <dependency>
        <!-- match version with tika-parsers -->
        <groupId>com.github.jai-imageio</groupId>
        <artifactId>jai-imageio-jpeg2000</artifactId>
        <version>1.4.0</version>
      </dependency>
      <dependency>
        <!-- match version with tika-parsers -->
        <groupId>org.xerial</groupId>
        <artifactId>sqlite-jdbc</artifactId>
        <version>3.39.2.1</version>
      </dependency>

      <!-- CSS and JS compression tool, used in SkinExtensions -->
      <dependency>
        <groupId>com.yahoo.platform.yui</groupId>
        <artifactId>yuicompressor</artifactId>
        <version>2.2.5</version>
      </dependency>

      <!-- Authentication -->
      <dependency>
        <groupId>securityfilter</groupId>
        <artifactId>securityfilter</artifactId>
        <version>2.0</version>
        <exclusions>
          <!-- [CELDEV-808] exclude xml-apis compile dependency -->
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- The JRCS JARS are are in our repo till we get them published on the central repository.
           JRCS home page: http://www.suigeneris.org/kb/display/jrcs/JRCS+Home -->
      <dependency>
        <groupId>org.suigeneris</groupId>
        <artifactId>jrcs.diff</artifactId>
        <version>0.4.2</version>
      </dependency>
      <dependency>
        <groupId>org.suigeneris</groupId>
        <artifactId>jrcs.rcs</artifactId>
        <version>0.4.2</version>
      </dependency>

      <!-- JTidy Has been picked up at https://github.com/jtidy/jtidy and immediately was
      reabandoned. However their release from Dec 2019 has at least some HTML5 support -->
      <dependency>
        <groupId>com.github.jtidy</groupId>
        <artifactId>jtidy</artifactId>
        <version>1.0.5</version>
        <exclusions>
          <exclusion>
            <groupId>xerces</groupId>
            <artifactId>dom3-xml-apis</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>1</version>
      </dependency>
      <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>javax.annotation-api</artifactId>
        <version>1.3.2</version>
      </dependency>
      <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>2.0.1.Final</version>
      </dependency>
      <dependency>
        <groupId>net.sf.trove4j</groupId>
        <artifactId>trove4j</artifactId>
        <version>3.0.3</version>
      </dependency>
      <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>3.2.2</version>
      </dependency>
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.12.0</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.11.0</version>
      </dependency>
      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>1.15</version>
      </dependency>
      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>1.9.4</version>
        <exclusions>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>1.10</version>
        <exclusions>
          <exclusion>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils-core</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>1.5</version>
        <exclusions>
          <exclusion>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>commons-net</groupId>
        <artifactId>commons-net</artifactId>
        <version>3.9.0</version>
      </dependency>
      <dependency>
        <groupId>commons-dbcp</groupId>
        <artifactId>commons-dbcp</artifactId>
        <version>1.4</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>33.2.1-jre</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>3.0.2</version>
      </dependency>
      <dependency>
        <!-- A small collection of Stream utilities for Java 8. May be removed in 9+ -->
        <groupId>com.codepoetics</groupId>
        <artifactId>protonpack</artifactId>
        <version>1.16</version>
      </dependency>
      <dependency>
        <groupId>one.util</groupId>
        <artifactId>streamex</artifactId>
        <version>0.8.4</version>
      </dependency>

      <dependency>
        <groupId>com.xpn.xwiki.platform.plugins</groupId>
        <artifactId>xwiki-plugin-application-manager</artifactId>
        <version>1.19</version>
      </dependency>
      <dependency>
        <groupId>com.xpn.xwiki.platform.plugins</groupId>
        <artifactId>xwiki-plugin-wiki-manager</artifactId>
        <version>1.26</version>
      </dependency>

      <dependency>
        <groupId>javax.ws.rs</groupId>
        <artifactId>javax.ws.rs-api</artifactId>
        <version>2.1.1</version>
      </dependency>
      <dependency>
        <groupId>jakarta.ws.rs</groupId>
        <artifactId>jakarta.ws.rs-api</artifactId>
        <version>3.1.0</version> <!-- 4.0.0 requires JDK 17, therefore fallback to 3.1.0 -->
      </dependency>
      <dependency>
        <!-- TODO [CELDEV-815] Upgrade to javax.servlet Spec 4.0 -->
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
      </dependency>
      <dependency>
        <groupId>struts</groupId>
        <artifactId>struts</artifactId>
        <version>1.2.9</version>
        <exclusions>
          <!-- There is conflict with hibernate antlr-2.7.6 dependency -->
          <exclusion>
            <groupId>antlr</groupId>
            <artifactId>antlr</artifactId>
          </exclusion>
          <!-- [CELDEV-808] exclude xml-apis compile dependency -->
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- JAX-RS implementation -->
      <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-common</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-client</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jersey.inject</groupId>
        <artifactId>jersey-hk2</artifactId>
        <version>${jersey.version}</version>
      </dependency>

      <!-- XML processing -->
      <!-- JAXB -->
      <dependency>
        <groupId>jakarta.xml.bind</groupId>
        <artifactId>jakarta.xml.bind-api</artifactId>
        <version>3.0.1</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.jaxb</groupId>
        <artifactId>jaxb-runtime</artifactId>
        <version>2.3.9</version>
      </dependency>
      <dependency>
        <groupId>xpp3</groupId>
        <artifactId>xpp3</artifactId>
        <version>1.1.4c</version>
      </dependency>
      <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesImpl</artifactId>
        <version>2.11.0</version>
        <exclusions>
          <!-- [CELDEV-808] exclude xml-apis compile dependency -->
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- TODO: We should drop ECS -->
      <dependency>
        <groupId>ecs</groupId>
        <artifactId>ecs</artifactId>
        <version>1.4.2</version>
      </dependency>

      <!-- JSON -->
      <dependency>
        <groupId>net.sf.json-lib</groupId>
        <artifactId>json-lib</artifactId>
        <version>2.3</version>
        <classifier>jdk15</classifier>
        <exclusions>
          <exclusion>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- some more xwiki crap we pull up from xwiki-core -->
      <dependency>
        <groupId>com.novell.ldap</groupId>
        <artifactId>jldap</artifactId>
        <version>4.3</version>
      </dependency>
      <!-- TODO drop this in favour of java 8 time library -->
      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>1.6</version>
      </dependency>
      <!-- iCal processing -->
      <dependency>
        <groupId>ical4j</groupId>
        <artifactId>ical4j</artifactId>
        <version>0.9.20</version>
        <exclusions>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- Mail sender -->
      <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>mail</artifactId>
        <version>1.4</version>
      </dependency>
      <!-- Used by another tool, it should be removed some time -->
      <dependency>
        <groupId>picocontainer</groupId>
        <artifactId>picocontainer</artifactId>
        <version>1.2</version>
        <exclusions>
          <!-- [CELDEV-808] exclude xml-apis compile dependency -->
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- Regular expressions -->
      <dependency>
        <groupId>oro</groupId>
        <artifactId>oro</artifactId>
        <version>2.0.8</version>
      </dependency>
      <!-- Used by XWiki 1.0 Groovy macro -->
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>1.7.5</version>
      </dependency>

      <!-- Logging -->
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-web</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j-impl</artifactId>
        <version>${log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${slf4j.version}</version>
      </dependency>

      <!-- Testing -->
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
      </dependency>
      <dependency>
        <groupId>org.xwiki.platform</groupId>
        <artifactId>xwiki-core-shared-tests</artifactId>
        <version>${xwiki.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-configuration-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-container-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.xwiki.platform</groupId>
            <artifactId>xwiki-core-component-default</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
          </exclusion>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit-dep</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.easymock</groupId>
        <artifactId>easymock</artifactId>
        <version>5.6.0</version>
      </dependency>
      <!-- Used to mock XWiki class -->
      <dependency>
        <groupId>jmock</groupId>
        <artifactId>jmock</artifactId>
        <version>1.2.0</version>
        <exclusions>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>3.3.0</version>
      </dependency>
      <dependency>
        <groupId>jmock</groupId>
        <artifactId>jmock-cglib</artifactId>
        <version>1.2.0</version>
      </dependency>
      <dependency>
        <groupId>org.jmock</groupId>
        <artifactId>jmock-legacy</artifactId>
        <version>2.5.1</version>
      </dependency>
      <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.141.59</version>
      </dependency>
      <!-- Needed for backward compatibility Aspects -->
      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>1.6.7</version>
      </dependency>

      <dependency>
        <!-- TODO replace with fasterxml.jackson -->
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-core-lgpl</artifactId>
        <version>1.9.13</version>
      </dependency>
      <dependency>
        <!-- TODO replace with fasterxml.jackson -->
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-mapper-lgpl</artifactId>
        <version>1.9.13</version>
      </dependency>
      <!-- Dom4J & Css4J [CELDEV-927] -->
      <dependency>
        <groupId>org.dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>2.1.3</version>
      </dependency>
      <dependency>
        <groupId>jdom</groupId>
        <artifactId>jdom</artifactId>
        <version>1.1</version>
      </dependency>
      <dependency>
        <groupId>jaxen</groupId>
        <artifactId>jaxen</artifactId>
        <version>1.2.0</version>
      </dependency>
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>css4j</artifactId>
        <version>0.43.1</version>
        <exclusions>
          <exclusion>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>css4j-dom4j</artifactId>
        <version>0.43.1</version>
      </dependency>
      <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>1.15.3</version>
      </dependency>
      <dependency>
        <groupId>xalan</groupId>
        <artifactId>xalan</artifactId>
        <version>2.7.2</version>
        <exclusions>
          <!-- [CELDEV-808] exclude xml-apis compile dependency -->
          <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- JDBC connector -->
      <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>3.1.3</version>
      </dependency>
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.49</version>
      </dependency>

    </dependencies>
  </dependencyManagement>
  <organization>
    <name>synventis gmbh</name>
    <url>https://www.synventis.com</url>
  </organization>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>3.6.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.4.0</version>
          <configuration>
            <encoding>UTF-8</encoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>3.5.4</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>3.4.0</version>
          <executions>
            <execution>
              <id>attach-sources</id>
              <phase>verify</phase>
              <goals>
                <goal>jar-no-fork</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>3.12.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>3.1.4</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.5.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.5.1</version>
          <configuration>
            <resourceEncoding>UTF-8</resourceEncoding>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-release-plugin</artifactId>
          <version>3.3.1</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.14.1</version>
          <configuration>
            <release>${java.version}</release>
            <encoding>UTF-8</encoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>com.github.eirslett</groupId>
          <artifactId>frontend-maven-plugin</artifactId>
          <version>1.15.4</version>
          <configuration>
            <installDirectory>target</installDirectory>
            <workingDirectory>.</workingDirectory>
            <nodeVersion>${nodejs.version}</nodeVersion>
          </configuration>
          <executions>
            <execution>
              <id>install node and npm</id>
              <goals>
                <goal>install-node-and-npm</goal>
              </goals>
              <phase>generate-resources</phase>
            </execution>
            <execution>
              <id>npm install</id>
              <goals>
                <goal>npm</goal>
              </goals>
              <phase>generate-resources</phase>
              <configuration>
                <arguments>install</arguments>
              </configuration>
            </execution>
            <execution>
              <id>npm build</id>
              <goals>
                <goal>npm</goal>
              </goals>
              <phase>generate-resources</phase>
              <configuration>
                <arguments>run build</arguments>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>com.jarslab.maven</groupId>
          <artifactId>babel-maven-plugin</artifactId>
          <version>1.6</version>
          <dependencies>
            <dependency>
              <!-- https://stackoverflow.com/a/75652825 -->
              <groupId>org.codehaus.plexus</groupId>
              <artifactId>plexus-utils</artifactId>
              <version>3.5.1</version>
            </dependency>
          </dependencies>
          <executions>
            <execution>
              <id>js-transpile</id>
              <phase>process-resources</phase>
              <goals>
                <goal>babel</goal>
              </goals>
              <configuration>
                <verbose>true</verbose>
                <threads>3</threads>
                <encoding>UTF-8</encoding>
                <babelSrc>
                  ${project.basedir}/node_modules/@babel/standalone/babel.min.js</babelSrc>
                <sourceDir>${project.basedir}/src/main/webapp/resources/</sourceDir>
                <targetDir>
                  ${project.build.directory}/${project.build.finalName}/resources/</targetDir>
                <jsIncludes>
                  <jsInclude>**/*.mjs</jsInclude>
                </jsIncludes>
                <jsExcludes>
                  <jsExclude>dist/**</jsExclude>
                </jsExcludes>
                <formatPresets>false</formatPresets>
                <presets>
                  ["env", {"modules": false, "targets": {"esmodules": true}}]
                </presets>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>3.5.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <id>enforce-banned-dependencies</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <bannedDependencies>
                  <excludes>
                    <exclude>org.xwiki.platform:xwiki-core-velocity</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-rendering-api</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-component-api</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-rendering-xwiki</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-component-api</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-observation-api</exclude>
                    <exclude>org.xwiki.platform:xwiki-core</exclude>
                    <exclude>org.xwiki.platform:xwiki-core-xml</exclude>
                    <exclude>com.xpn.xwiki.platform.plugins:xwiki-plugin-mailsender</exclude>
                    <exclude>com.xpn.xwiki.platform.plugins:xwiki-plugin-skinx</exclude>
                    <exclude>commons-logging:commons-logging</exclude>
                  </excludes>
                  <message>Direct or transitive dependency on a banned artifact was detected.</message>
                </bannedDependencies>
              </rules>
              <fail>true</fail>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
    <extensions>
      <extension>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-ssh-external</artifactId>
        <version>3.5.3</version>
      </extension>
    </extensions>
  </build>
  <repositories>
    <repository>
      <id>xwiki-externals</id>
      <name>XWiki Maven2 Remote Repository for Third Party Dependencies</name>
      <url>https://maven.xwiki.org/externals</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>xwiki-releases</id>
      <name>XWiki Maven2 Remote Repository for Releases</name>
      <url>https://maven.xwiki.org/releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>xwiki-snapshots</id>
      <name>XWiki Maven2 Remote Repository for Snapshots</name>
      <url>https://maven.xwiki.org/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>celements-externals</id>
      <name>Celements Maven2 Remote Repository for Third Party Dependencies</name>
      <url>${repo.url.celements}/externals</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>celements-releases</id>
      <name>Celements Maven2 Remote Repository for Releases</name>
      <url>${repo.url.celements}/releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>celements-snapshots</id>
      <name>Celements Maven2 Remote Repository for Snapshots</name>
      <url>${repo.url.celements}/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>jboss-thirdparty-releases</id>
      <name>JBoss Thirdparty Releases</name>
      <url>
        https://repository.jboss.org/nexus/content/repositories/thirdparty-releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>xwiki-plugins-externals</id>
      <name>XWiki Maven2 Plugin Remote Repository for Third Party Plugins</name>
      <url>https://maven.xwiki.org/externals</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
    <pluginRepository>
      <id>xwiki-plugins-releases</id>
      <name>XWiki Maven2 Plugin Remote Repository for Releases</name>
      <url>https://maven.xwiki.org/releases</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </pluginRepository>
    <pluginRepository>
      <id>xwiki-plugins-snapshots</id>
      <name>XWiki Maven2 Plugin Remote Repository for Snapshots</name>
      <url>https://maven.xwiki.org/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
  </pluginRepositories>
  <profiles>
    <profile>
      <id>disable-java8-doclint</id>
      <activation>
        <jdk>[1.8,)</jdk>
      </activation>
      <properties>
        <doclint>none</doclint>
      </properties>
    </profile>
  </profiles>
  <distributionManagement>
    <snapshotRepository>
      <id>celements-snapshot-repository</id>
      <url>${repo.url.dist.celements}/snapshots</url>
      <uniqueVersion>true</uniqueVersion>
    </snapshotRepository>
    <repository>
      <id>celements-release-repository</id>
      <url>${repo.url.dist.celements}/releases</url>
      <uniqueVersion>true</uniqueVersion>
    </repository>
  </distributionManagement>
</project>
