Hi, Moore
There are two solutions. You can either give the fully qualified class name
in the absolute URI or use relative URI for the namespace. My best guess
about the implementation is that if you specify an absolute URI for the
namespace, it tries to get the class name from it. If it is a relative URI,
the implementation tries to get the class name from the attribute of
component element.
1.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:javaMath="http://xml.apache.org/xslt/java.lang.Math"
xmlns:lxslt="http://xml.apache.org/xslt"
extension-element-prefixes="javaMath"
exclude-result-prefixes="lxslt">
2.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:javaMath="java"
xmlns:lxslt="http://xml.apache.org/xslt"
extension-element-prefixes="javaMath"
exclude-result-prefixes="lxslt">
Christine Li
XSLT Development
IBM Toronto Lab
Tel: (905)413-2601
Email: [EMAIL PROTECTED]
"Moore, Gavin"
<[EMAIL PROTECTED] To: Morris
Kwan/Toronto/[EMAIL PROTECTED]
.com> cc: <[EMAIL PROTECTED]>
Subject: RE: Xalan Extensions -
Endorsed Override
05/13/2003 11:14
AM
Hi Morris,
Thanks for getting back to me so fast. That worked for that sample (I
should have worked that out myself!), however the original problem I was
having was trying to process the attached XSL (downloaded from IBM) into
SVG. It's just a simple pie chart example. However, when I try to process
this, I get a similar error:
D:\MyJava\Development\XML\XML_to_SVG>java org.apache.xalan.xslt.Process -in
ibmpie.xml -xsl ibmpie.xsl -out ibmpie.svg
file:/D:/MyJava/Development/XML/XML_to_SVG/ibmpie.xsl; Line 169; Column -1;
XSLT Error (javax.xml.transform.TransformerException):
java.lang.NoSuchMethodException: For extension function, could not find
method java.lang.Double.toRadians([ExpressionContext,] ).
Is there a similar simple solution for this?
Thanks again,
Gavin.
-----Original Message-----
From: Morris Kwan [mailto:[EMAIL PROTECTED]
Sent: 13 May 2003 15:52
To: Moore, Gavin
Cc: [EMAIL PROTECTED]
Subject: Re: Xalan Extensions - Endorsed Override
You need to compile IntDate.java under the same directory and add this
directory to the CLASSPATH. You can just add it as "." if you run from this
dir.
> set CLASSPATH=%CLASSPATH%;.
> javac IntDate.java
Morris Kwan
XSLT Development
IBM Toronto Lab
Tel: (905)413-3729
Email: [EMAIL PROTECTED]
"Moore, Gavin"
<[EMAIL PROTECTED] To:
<[EMAIL PROTECTED]>
.com> cc:
Subject: Xalan Extensions -
Endorsed Override
13.05.2003 10:41
Hi,
I'm trying to get some extensions working with Xalan and JDK1.4, and it
isn't working for me. I'm using one of the samples, 3-java-namespace, and
I get the message below:
D:\xalan_2_5\xalan-j_2_5_0\samples\extensions>java
org.apache.xalan.xslt.Process -in 3-java-namespace.xml -xsl 3-java-n
amespace.xsl
file:///D:/xalan_2_5/xalan-j_2_5_0/samples/extensions/3-java-namespace.xsl;
Line #18; Column #60; XSLT Error (javax.xml.
transform.TransformerException): javax.xml.transform.TransformerException:
java.lang.ClassNotFoundException: IntDate
I looked up the error and found that it should be solved by adding
xalan.jar, xml-apis.jar and xercesImpl.jar to the "endorsed" directory in
the the lib directory of JAVA_HOME of the JRE. Incidentally, I had to
create the endorsed directory. After I added the jar files, it appears to
be looking for the correct version of Xalan, as I checked it
with org.apache.xalan.xslt.EnvironmentCheck and got the file attached,
which shows the before and after adding the files. However, I still get
the same error when I try to process the xml. Does anyone have any other
way to do this? I've also tried the Xbootclasspath option mentioned at
http://xml.apache.org/xalan-j/faq.html#faq-N100CB, but with similar lack
of success.
Thanks,
Gavin.
#### outFile.txt has been removed from this note on May 13 2003 by Morris
Kwan
#### ibmpie.xml has been removed from this note on May 14 2003 by Christine
Li
#### ibmpie.xsl has been removed from this note on May 14 2003 by Christine
Li