You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-users@xalan.apache.org by Benoit Vatan <b....@ubik-ingenierie.com> on 2006/02/02 15:08:37 UTC

Pluggin in specific XPathFactory for user defined XPath functions libraries

Hello,

I've been trying for the last days to plug my specific XPathFactory through the
jvm system property :
javax.xml.xpath.XPathFactory:http://java.sun.com/jaxp/xpath/dom=com.ubik.xpath.UbikXPathFactory

But this seems hopeless as it seems that xalan uses its specific XPath factory.

My aim is to be able to plug in specific XPath extension library just by
dropping a .jar in the classpath and specifying a factory porperty in the JVM.
I thought it was possible to do this by pluggin in my own XPathFactory
implementation and then provide XPath instances with my proper
XPathFunctionResolver as described here :
http://xml.apache.org/xalan-j/xpath_apis.html

Here is the xsl snippet I'd like to be able to use :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
	version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	xmlns:ubik="http://www.ubik-ingenierie.com/ubik">

	<xsl:output method="html" indent="yes" encoding="UTF-8"/>

	<xsl:template match="/">
		<html>
			<xsl:value-of select="ubik:replace(root/node[1]/@att,'r','-')"/>
		</html>
	</xsl:template>

</xsl:stylesheet>

The "replace()" function is just an example.

I don't want any dependency towards some com.ubik.myapp.SomeFunctionsClass in my
XSL stylesheets, so I'd to be able place my lib in the classpath. Is there any
way to do this ??? Without using any Xalan specifc API ?

Thanks for reading.