From 4928cd3749d0b92d96da6ad60eea5bcf6af344aa Mon Sep 17 00:00:00 2001 From: Jan Fyrbach Date: Thu, 3 Nov 2022 13:31:35 +0100 Subject: [PATCH] Disable XML processing limits correctly The XPath limit came with JDK 8u331: https://www.oracle.com/java/technologies/javase/8u331-relnotes.html#JDK-8270504 --- .github/workflows/build.yml | 2 +- .../java/org/forgerock/opendj/maven/GenerateConfigMojo.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b65f2eef67..d223e5ca22 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,4 +22,4 @@ jobs: key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Run the Maven verify phase - run: mvn -B verify -Dclirr.skip -Djdk.xml.xpathExprOpLimit=0 --file pom.xml + run: mvn -B verify -Dclirr.skip diff --git a/opendj-maven-plugin/src/main/java/org/forgerock/opendj/maven/GenerateConfigMojo.java b/opendj-maven-plugin/src/main/java/org/forgerock/opendj/maven/GenerateConfigMojo.java index 2711cb0b64..ca02dd034c 100644 --- a/opendj-maven-plugin/src/main/java/org/forgerock/opendj/maven/GenerateConfigMojo.java +++ b/opendj-maven-plugin/src/main/java/org/forgerock/opendj/maven/GenerateConfigMojo.java @@ -12,6 +12,7 @@ * information: "Portions Copyright [year] [name of copyright owner]". * * Copyright 2013-2016 ForgeRock AS. + * Portions copyright 2022 Wren Security. */ package org.forgerock.opendj.maven; @@ -395,6 +396,9 @@ private String getXMLPackageDirectory() { private void initializeStylesheets() throws TransformerConfigurationException { getLog().info("Loading XSLT stylesheets..."); stylesheetFactory = TransformerFactory.newInstance(); + stylesheetFactory.setAttribute("jdk.xml.xpathExprGrpLimit", "0"); + stylesheetFactory.setAttribute("jdk.xml.xpathExprOpLimit", "0"); + stylesheetFactory.setAttribute("jdk.xml.xpathTotalOpLimit", "0"); stylesheetFactory.setURIResolver(resolver); stylesheetMetaJava = loadStylesheet("metaMO.xsl"); stylesheetMetaPackageInfo = loadStylesheet("package-info.xsl");