[xsl] XALAN: exceptions from extension functions

Subject: [xsl] XALAN: exceptions from extension functions
From: "McNeill, Keith D." <mcneill@xxxxxxxxxxxxx>
Date: Tue, 9 Jan 2001 17:56:34 -0500
We're using extension functions in Xalan 1.2.2.  We've noticed that
exceptions that are thrown within extension functions are lost.  Looking
into the code I notice that it happily eats the exception, in fact has a
commented out XPathException.  Is there any reason for this?  Some
standards thing where it isn't cool to throw an exception from an
extension function?
 
Thanks,
 
Keith McNeill
mcneill@xxxxxxxxxxxxx <mailto:mcneill@xxxxxxxxxxxxx> 
 
The relevant code.....
 
org.apache.xalan.xpath.XSLTJavaClassEngine.callFunction:
 
    try
    {
 
    ........
     
      if(isJava)
        return callJava(javaObject, funcName, argArray, methodKey);
      else
        return e.call (null, funcName, argArray);
    }
    catch (Exception e) 
    {
      // throw new XPathException ("Error with extension in
callFunction.", e);
      String msg = e.getMessage();
      if(null != msg)
      {
        if(msg.startsWith("Stopping after fatal error:"))
        {
          msg = msg.substring("Stopping after fatal error:".length());
        }
        System.out.println("Call to extension function failed: "+msg);
      }
      else
      {
        throw new XPathProcessorException ("Extension not found");
      }
    }

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread