public Object extFunction(String ns,String funcName,Vector argVec,Object methodKey,ExpressionContext exprContext) throws javax.xml.transform.TransformerException {
  Object result=null;
  if (null != ns) {
    ExtensionHandler extNS=(ExtensionHandler)m_extensionFunctionNamespaces.get(ns);
    if (null != extNS) {
      try {
        result=extNS.callFunction(funcName,argVec,methodKey,exprContext);
      }
 catch (      javax.xml.transform.TransformerException e) {
        throw e;
      }
catch (      Exception e) {
        throw new javax.xml.transform.TransformerException(e);
      }
    }
 else {
      throw new XPathProcessorException(XSLMessages.createMessage(XSLTErrorResources.ER_EXTENSION_FUNC_UNKNOWN,new Object[]{ns,funcName}));
    }
  }
  return result;
}

public Object extFunction ( String ns , String funcName , Vector argVec , Object methodKey , ExpressionContext exprContext ) throws javax . xml . transform . TransformerException { Object result = null ; if ( null != ns ) { ExtensionHandler extNS = ( ExtensionHandler ) m_extensionFunctionNamespaces . get ( ns ) ; if ( null != extNS ) { try { result = extNS . callFunction ( funcName , argVec , methodKey , exprContext ) ; } catch ( javax . xml . transform . TransformerException e ) { throw e ; } catch ( Exception e ) { throw new javax . xml . transform . TransformerException ( e ) ; } } else { throw new XPathProcessorException ( XSLMessages . createMessage ( XSLTErrorResources . ER_EXTENSION_FUNC_UNKNOWN , new Object [ ] { ns , funcName } ) ) ; } } return result ; }
handle an extension function .
