This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit b8c93ac50131bdd50aef3b1d436306856db4b035 Author: Kodanda Ramu Kakarla <kkaka...@kkakarla.pnq.csb> AuthorDate: Tue Oct 6 12:30:07 2020 +0530 CAMEL-15616:camel-saxon - Upgrade to Saxon 10.x" --- components/camel-saxon/pom.xml | 2 +- .../java/org/apache/camel/component/xquery/XQueryBuilder.java | 4 ++-- .../java/org/apache/camel/converter/saxon/SaxonConverter.java | 7 ++++--- .../apache/camel/component/xslt/SaxonXsltFeatureRouteTest.java | 9 +++++---- components/camel-xslt-saxon/pom.xml | 2 +- parent/pom.xml | 2 +- 6 files changed, 14 insertions(+), 12 deletions(-) diff --git a/components/camel-saxon/pom.xml b/components/camel-saxon/pom.xml index 9ed643c..e3c1a61 100644 --- a/components/camel-saxon/pom.xml +++ b/components/camel-saxon/pom.xml @@ -33,7 +33,7 @@ <properties> <camel.osgi.import.additional> - net.sf.saxon.*;version="[9.9.0,10)" + net.sf.saxon.*;version="[9.9.0,11)" </camel.osgi.import.additional> </properties> diff --git a/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java index fd7f38a..384d224 100644 --- a/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java +++ b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/XQueryBuilder.java @@ -223,7 +223,7 @@ public abstract class XQueryBuilder implements Expression, Predicate, NamespaceA DOMResult result = new DOMResult(); DynamicQueryContext context = createDynamicContext(exchange); XQueryExpression expression = getExpression(); - expression.pull(context, result, properties); + expression.run(context, result, properties); return result.getNode(); } @@ -232,7 +232,7 @@ public abstract class XQueryBuilder implements Expression, Predicate, NamespaceA ByteArrayOutputStream buffer = new ByteArrayOutputStream(); Result result = new StreamResult(buffer); - getExpression().pull(createDynamicContext(exchange), result, properties); + getExpression().run(createDynamicContext(exchange), result, properties); byte[] answer = buffer.toByteArray(); buffer.close(); diff --git a/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java b/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java index b9c0d75..16f1bd4 100644 --- a/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java +++ b/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java @@ -28,8 +28,8 @@ import org.w3c.dom.NodeList; import net.sf.saxon.Configuration; import net.sf.saxon.dom.DOMNodeList; import net.sf.saxon.dom.NodeOverNodeInfo; -import net.sf.saxon.om.DocumentInfo; import net.sf.saxon.om.NodeInfo; +import net.sf.saxon.om.TreeInfo; import net.sf.saxon.trans.XPathException; import net.sf.saxon.type.Type; import org.apache.camel.Converter; @@ -51,9 +51,10 @@ public final class SaxonConverter { return (Document) NodeOverNodeInfo.wrap(node); case Type.ELEMENT: // ELEMENT nodes need to build a new DocumentInfo before wrapping + //https://www.saxonica.com/documentation/#!javadoc/net.sf.saxon/Configuration@buildDocumentTree Configuration config = node.getConfiguration(); - DocumentInfo documentInfo = config.buildDocument(node); - return (Document) NodeOverNodeInfo.wrap(documentInfo); + TreeInfo treeInfo = config.buildDocumentTree(node); + return (Document) NodeOverNodeInfo.wrap(treeInfo.getRootNode()); default: return null; } diff --git a/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltFeatureRouteTest.java b/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltFeatureRouteTest.java index 241c6fc..24186c6 100644 --- a/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltFeatureRouteTest.java +++ b/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltFeatureRouteTest.java @@ -16,7 +16,7 @@ */ package org.apache.camel.component.xslt; -import net.sf.saxon.trans.UncheckedXPathException; +import net.sf.saxon.trans.XPathException; import org.apache.camel.CamelExecutionException; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.test.junit5.CamelTestSupport; @@ -39,9 +39,10 @@ public class SaxonXsltFeatureRouteTest extends CamelTestSupport { template.sendBody("direct:start1", message); fail("expect an exception here"); } catch (Exception ex) { - // expect an exception here - assertTrue(ex instanceof CamelExecutionException, "Get a wrong exception"); - assertTrue(ex.getCause() instanceof UncheckedXPathException, "Get a wrong exception cause"); + + assertTrue(ex instanceof CamelExecutionException); + assertTrue(ex.getCause() instanceof XPathException); + } } diff --git a/components/camel-xslt-saxon/pom.xml b/components/camel-xslt-saxon/pom.xml index 523a1ee..b6b3097 100644 --- a/components/camel-xslt-saxon/pom.xml +++ b/components/camel-xslt-saxon/pom.xml @@ -34,7 +34,7 @@ <properties> <camel.osgi.import.additional> - net.sf.saxon.*;version="[9.9.0,10)" + net.sf.saxon.*;version="[9.9.0,11)" </camel.osgi.import.additional> </properties> diff --git a/parent/pom.xml b/parent/pom.xml index 1a83116..3424838 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -489,7 +489,7 @@ <rome-version>1.15.0</rome-version> <rxjava-version>1.3.8</rxjava-version> <rxjava2-version>2.2.19</rxjava2-version> - <saxon-version>9.9.1-7</saxon-version> + <saxon-version>10.2</saxon-version> <scala-version>2.11.7</scala-version> <scribe-version>1.3.7</scribe-version> <servicemix-specs-version>2.9.0</servicemix-specs-version>