This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch sandbox/camel-3.x in repository https://gitbox.apache.org/repos/asf/camel.git
commit 4488130d7ff47d53f3872aa9b6d22379f86a6522 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon Dec 17 13:39:33 2018 +0100 CAMEL-12994: Fixed issue in camel-saxon to skip reservered namespace prefix according to the XQuery spec. --- .../java/org/apache/camel/component/xquery/XQueryBuilder.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) 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 6c3bac9..055aeef 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 @@ -720,8 +720,13 @@ public abstract class XQueryBuilder implements Expression, Predicate, NamespaceA for (Map.Entry<String, String> entry : entries) { String prefix = entry.getKey(); String uri = entry.getValue(); - staticQueryContext.declareNamespace(prefix, uri); - staticQueryContext.setInheritNamespaces(true); + // skip invalid prefix or uri according to XQuery spec + boolean invalid = "xml".equals(prefix) || "xmlns".equals(prefix); + if (!invalid) { + LOG.debug("Declaring namespace [prefix: {}, uri: {}]", prefix, uri); + staticQueryContext.declareNamespace(prefix, uri); + staticQueryContext.setInheritNamespaces(true); + } } expression = createQueryExpression(staticQueryContext);