From 9d3c965436a529a598e1b1ee297b6a0c86b536f0 Mon Sep 17 00:00:00 2001 From: Maxim Date: Mon, 18 Aug 2025 23:43:10 +0300 Subject: [PATCH] Fix exception during applying policy --- core/pom.xml | 5 +++++ core/src/main/java/org/verapdf/policy/PolicyChecker.java | 3 ++- .../main/java/org/verapdf/policy/SchematronPipeline.java | 3 ++- core/src/main/java/org/verapdf/report/XsltTransformer.java | 3 ++- pom.xml | 6 ++++++ 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index c61d1f48e..fb5f60a74 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -86,6 +86,11 @@ test + + net.sf.saxon + Saxon-HE + + com.fasterxml.jackson.core jackson-databind diff --git a/core/src/main/java/org/verapdf/policy/PolicyChecker.java b/core/src/main/java/org/verapdf/policy/PolicyChecker.java index 18182c1d7..cb37cc897 100644 --- a/core/src/main/java/org/verapdf/policy/PolicyChecker.java +++ b/core/src/main/java/org/verapdf/policy/PolicyChecker.java @@ -215,7 +215,8 @@ private static void applySchematronXsl(final InputStream schematronXsl, final In } private static TransformerFactory getTransformerFactory() { - TransformerFactory fact = TransformerFactory.newInstance(); + TransformerFactory fact = TransformerFactory.newInstance("net.sf.saxon.TransformerFactoryImpl", + null); try { fact.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true); fact.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "file"); diff --git a/core/src/main/java/org/verapdf/policy/SchematronPipeline.java b/core/src/main/java/org/verapdf/policy/SchematronPipeline.java index 31a883b13..bb9cfcb0c 100644 --- a/core/src/main/java/org/verapdf/policy/SchematronPipeline.java +++ b/core/src/main/java/org/verapdf/policy/SchematronPipeline.java @@ -90,7 +90,8 @@ private static File createTempFileResult(final Transformer transformer, final St } private static TransformerFactory getTransformerFactory() { - TransformerFactory fact = TransformerFactory.newInstance(); + TransformerFactory fact = TransformerFactory.newInstance("net.sf.saxon.TransformerFactoryImpl", + null); try { fact.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true); fact.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "file"); diff --git a/core/src/main/java/org/verapdf/report/XsltTransformer.java b/core/src/main/java/org/verapdf/report/XsltTransformer.java index 305581a97..ad3689606 100644 --- a/core/src/main/java/org/verapdf/report/XsltTransformer.java +++ b/core/src/main/java/org/verapdf/report/XsltTransformer.java @@ -77,7 +77,8 @@ public static void transform(InputStream source, InputStream xslt, PrintWriter d } private static TransformerFactory getTransformerFactory() { - TransformerFactory fact = TransformerFactory.newInstance(); + TransformerFactory fact = TransformerFactory.newInstance("net.sf.saxon.TransformerFactoryImpl", + null); try { fact.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true); fact.setAttribute(XMLConstants.ACCESS_EXTERNAL_STYLESHEET, "file"); diff --git a/pom.xml b/pom.xml index 6af8cd52e..d4ec59fc4 100644 --- a/pom.xml +++ b/pom.xml @@ -189,6 +189,12 @@ 2.3.0.1 + + net.sf.saxon + Saxon-HE + 12.8 + +