Subject: [xsl] getting "could not create extension" with xalan From: Viresh Jain <vireshkj@xxxxxxxxx> Date: Tue, 19 Jul 2005 12:17:01 -0500 |
I am trying to use example provided on http://xml.apache.org/xalan-j/extensions.html (modified it to simplify). The code is attached: <?xml version="1.0"?> <!--Namespaces are global if you set them in the stylesheet element--> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xalan="http://xml.apache.org/xalan" xmlns:my-ext="ext1" extension-element-prefixes="my-ext"> <!--The component and its script are in the xalan namespace and define the implementation of the extension.--> <xalan:component prefix="my-ext" elements="timelapse" functions="getdate"> <xalan:script lang="javascript"> var multiplier=1; // The methods or functions that implement extension elements always take 2 // arguments. The first argument is the XSL Processor context; the second // argument is the element node. function timelapse(xslProcessorContext, elem) { multiplier=parseInt(elem.getAttribute("multiplier")); // The element return value is placed in the result tree. // If you do not want a return value, return null. return null; } function getdate() { return "TEST"; } </xalan:script> </xalan:component> <xsl:template match="/"> <p>We have logged your enquiry and will respond by <xsl:value-of select="my-ext:getdate()"/>.</p> </xsl:template> </xsl:stylesheet> When i try to use commandline to do transformation: java -classpath c:\work\lib\bsf.jar;c:\work\lib\js.jar;c:\work\lib\xalan.jar org.apache.xalan.xslt.Process -IN testData.xml -XSL testXSL.xsl -OUT testout.xml I am getting following error: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl. java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.xalan.extensions.ExtensionHandlerGeneral.callFunction(ExtensionHan dlerGeneral.java:361) at org.apache.xalan.extensions.ExtensionsTable.extFunction(ExtensionsTable.java: 227) at org.apache.xalan.transformer.TransformerImpl.extFunction(TransformerImpl.java :461) at org.apache.xpath.functions.FuncExtFunction.execute(FuncExtFunction.java:233) at org.apache.xpath.Expression.executeCharsToContentHandler(Expression.java:357) at org.apache.xalan.templates.ElemValueOf.execute(ElemValueOf.java:319) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Transforme rImpl.java:2339) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:7 10) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Transforme rImpl.java:2339) at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerI mpl.java:2160) at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.ja va:1213) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:6 68) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1 129) at org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1 107) at org.apache.xalan.xslt.Process.main(Process.java:1041) Caused by: com.ibm.bsf.BSFException: JavaScript Error: Internal Error: java.lang.IllegalArgumentException at com.ibm.bsf.engines.javascript.JavaScriptEngine.handleError(JavaScriptEngine. java:182) at com.ibm.bsf.engines.javascript.JavaScriptEngine.call(JavaScriptEngine.java:12 2) ... 19 more (Location of error unknown)XSLT Error (javax.xml.transform.TransformerException): Could not create extension: getdate because of: java.lang.reflect.InvocationTargetException Had anyone on this list encountered this error?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Radio type and Button: Ne, Joris Gillis | Thread | [xsl] Merging XML structure by com, Karl Koch |
[xsl] Radio type and Button: Need h, Tran Thanh Dinh | Date | [xsl] Merging XML structure by com, Karl Koch |
Month |