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());