CAMEL-9255: DocumentType not used for XPath predicates in XML DSL. Thanks to 
Stephan Siano for the patch.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a8ecbd9e
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a8ecbd9e
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a8ecbd9e

Branch: refs/heads/camel-2.16.x
Commit: a8ecbd9e930785c81bbb85457b8b1ede11d14f31
Parents: 8ad3673
Author: Claus Ibsen <davscl...@apache.org>
Authored: Tue Oct 27 08:50:42 2015 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Tue Oct 27 08:51:34 2015 +0100

----------------------------------------------------------------------
 .../java/org/apache/camel/model/language/XPathExpression.java | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/a8ecbd9e/camel-core/src/main/java/org/apache/camel/model/language/XPathExpression.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/model/language/XPathExpression.java 
b/camel-core/src/main/java/org/apache/camel/model/language/XPathExpression.java
index 8fc05e4..8f6aadd 100644
--- 
a/camel-core/src/main/java/org/apache/camel/model/language/XPathExpression.java
+++ 
b/camel-core/src/main/java/org/apache/camel/model/language/XPathExpression.java
@@ -202,6 +202,13 @@ public class XPathExpression extends 
NamespaceAwareExpression {
 
     @Override
     public Predicate createPredicate(CamelContext camelContext) {
+        if (documentType == null && documentTypeName != null) {
+            try {
+                documentType = 
camelContext.getClassResolver().resolveMandatoryClass(documentTypeName);
+            } catch (ClassNotFoundException e) {
+                throw ObjectHelper.wrapRuntimeCamelException(e);
+            }
+        }
         resolveXPathFactory(camelContext);
         return super.createPredicate(camelContext);
     }

Reply via email to