xsl-list
[Top] [All Lists]

getting "could not create extension" with xalan

2005-07-19 10:17:01
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(ExtensionHandlerGeneral.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(TransformerImpl.java:2339)
        at 
org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:710)
        at 
org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2339)
        at 
org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2160)
        at 
org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1213)
        at 
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:668)
        at 
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1129)
        at 
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1107)
        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:122)
        ... 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?

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>
  • getting "could not create extension" with xalan, Viresh Jain <=