There is no way to make any functions available after a process has
finished, or between concurrent processes. Installing functions globally
makes them available to any instance of the XSLT processor that you create
_within_ the process under which they were installed. Once an executable
has terminated, everything created by that executable's process is
destroyed.
Installing a function locally makes it available only to the instance of
the processor into which you installed it. Any other instance of the
processor that you create within that process will not have access to the
function.
To do what you want to do, you'll need to build a custom version of the
Xalan executable, or your own executable, that contains code which installs
your functions. In such a case, were you create only one instance of the
process, it makes no different whether you install it locally or globally.
Dave
"Lee Jackson"
<[EMAIL PROTECTED] To:
<[email protected]>
.co.uk> cc: (bcc: David N
Bertoni/Cambridge/IBM)
Subject:
installExternalFunctionGlobal() ??
05/19/2002 10:09
AM
Hi peeps,
I think I've misunderstood what the above function does and just wanted to
confirm so.
What I am *trying* to do is make a few more functions available to my
stylesheets and access them just by including the namespace in my xsl. To
test things out I've just modified the ExternalFunction sample to install
the external function globally. Reading the description for
installExternalFunctionGlobal :-
installExternalFunctionGlobal() makes the function available globally. Use
uninstallExternalFunctionGlobal() to remove the function. The global
functions are static.
I'd assumed that this would accomplish such..and running ExternalFunction
works without error. However if I try to use Xalan afterwards e.g. "Xalan
foo.xml foo.xsl" I am told that the functions are not available.
So I have to assume that installExternalFunctionGlobal doesn't actually
make
the new namespace generally available to any instance of the xslt
processor...but why have this function when installExternalFunction appears
to do much the same thing?
Am I correct in thinking that to make these ExternalFunctions available I
am
going to have to modify the calling app...in my particular case several of
them...to incude these functions within the source?
I know I can look at the source code but just hoping someone has a quick
and
easy answer for me :)
Many thanks
Lee Jackson