Subject: RE: [xsl] Unable to use the functions From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Tue, 5 Jul 2005 13:59:25 +0100 |
Firstly, you need an XSLT 2.0 processor to run this. Secondly, replace xsl:result with xsl:sequence - you are using an old version of the XSLT 2.0 specification. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Lakshmi narayana [mailto:lchintala@xxxxxxxxxxxx] > Sent: 05 July 2005 11:17 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Unable to use the functions > > > Hi, > I am trying to execute one function in XSLT. But I am getting the > exceptions. Below are the code in XSL file and exceptions. > Please suggest me the changes i had to make in XSLT to > execute the reverse > function properly. > > XSL Code. > > <xsl:transform > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:str="http://user.com/namespace" > version="1.0" > exclude-result-prefixes="str"> > > <xsl:function name="str:reverse"> > <xsl:param name="sentence"/> > <xsl:result > select="if (contains($sentence, ' ')) > then concat(str:reverse(substring-after($sentence, ' ')), > ' ', > substring-before($sentence, ' ')) > else $sentence"/> > </xsl:function> > > <xsl:template match="/"> > <output> > <xsl:value-of select="str:reverse('DOG BITES MAN')"/> > </output> > </xsl:template> > > </xsl:transform> > > > Exceptions : > > > javax.xml.transform.TransformerConfigurationException: > javax.xml.transform.TransformerConfigurationException: > javax.xml.transform.TransformerException: > javax.xml.transform.TransformerException: xsl:function is not > allowed in > this position in the stylesheet! > at > org.apache.xalan.processor.TransformerFactoryImpl.newTransform > er(Transformer > FactoryImpl.java:805) > at MyTest.test(MyTest.java:31) > at MyTest.main(MyTest.java:49) > Caused by: javax.xml.transform.TransformerConfigurationException: > javax.xml.transform.TransformerException: > javax.xml.transform.TransformerException: xsl:function is not > allowed in > this position in the stylesheet! > at > org.apache.xalan.processor.TransformerFactoryImpl.newTemplates > (TransformerFa > ctoryImpl.java:984) > at > org.apache.xalan.processor.TransformerFactoryImpl.newTransform > er(Transformer > FactoryImpl.java:788) > ... 2 more > Caused by: javax.xml.transform.TransformerException: > javax.xml.transform.TransformerException: xsl:function is not > allowed in > this position in the stylesheet! > at > org.apache.xalan.processor.TransformerFactoryImpl.newTemplates > (TransformerFa > ctoryImpl.java:980) > ... 3 more > Caused by: javax.xml.transform.TransformerException: > xsl:function is not > allowed in this position in the stylesheet! > at > org.apache.xalan.processor.StylesheetHandler.error(StylesheetH > andler.java:96 > 6) > at > org.apache.xalan.processor.StylesheetHandler.getProcessorFor(S > tylesheetHandl > er.java:428) > at > org.apache.xalan.processor.StylesheetHandler.startElement(Styl > esheetHandler. > java:662) > at > org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1672) > at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) > at > org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) > at > org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667) > at org.apache.crimson.parser.Parser2.parse(Parser2.java:337) > at > org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) > at > org.apache.xalan.processor.TransformerFactoryImpl.newTemplates > (TransformerFa > ctoryImpl.java:972) > ... 3 more > > > Thanks, > Laxmi Narayana Babu. > OSI Technologies.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Unable to use the functio, James Fuller | Thread | RE: [xsl] Generating Sequential IDs, Andrew Welch |
[xsl] Problem with generating refer, Lakshmi narayana | Date | Re: [xsl] New XSL user seeking assi, Joris Gillis |
Month |