You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/02/11 16:56:08 UTC

svn commit: r909038 - /camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java

Author: davsclaus
Date: Thu Feb 11 15:56:05 2010
New Revision: 909038

URL: http://svn.apache.org/viewvc?rev=909038&view=rev
Log:
CAMEL-2463: xslt component now supports using xsl:include where the included files is loaded from classpath and relative according to the endpoint configured location.

Modified:
    camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java

Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java?rev=909038&r1=909037&r2=909038&view=diff
==============================================================================
--- camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java (original)
+++ camel/trunk/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java Thu Feb 11 15:56:05 2010
@@ -17,7 +17,6 @@
 package org.apache.camel.component.xslt;
 
 import java.util.Map;
-
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.URIResolver;
 
@@ -91,12 +90,17 @@
             xslt.getConverter().setTransformerFactory(factory);
         }
 
-        // set resolver before input stream as resolver is used when loading the input stream
-        URIResolver resolver = getUriResolver();
+        // lookup custom resolver to use
+        URIResolver resolver = resolveAndRemoveReferenceParameter(parameters, "uriResolver", URIResolver.class);
+        if (resolver == null) {
+            // not in endpoint then use component specific resolver
+            resolver = getUriResolver();
+        }
         if (resolver == null) {
             // fallback to use a Camel specific resolver
             resolver = new XsltUriResolver(getCamelContext().getClassResolver(), remaining);
         }
+        // set resolver before input stream as resolver is used when loading the input stream
         xslt.setUriResolver(resolver);
 
         xslt.setTransformerInputStream(resource.getInputStream());