On 10/08/03 08:09, Morris Kwan wrote: > > > > Hi, Everett > > I think you are actually using an older version of Xalan packaged in JDK > 1.4. Please read this FAQ > (http://xml.apache.org/xalan-j/faq.html#faq-N100CB) or use EnvironmentCheck > to find out which version of Xalan is picked up by your environment. > > Morris Kwan > XSLT Development > IBM Toronto Lab > Tel: (905)413-3729 > Email: [EMAIL PROTECTED]
Hi Morris-
Well, if true, that would certainly be silly of me. Not to mention completely unexpected....
So I threw <out> <xsl:copy-of select="xalan:checkEnvironment()"/> </out> into my xsl and commented the exslt calls:
<out xmlns:date="http://exslt.org/dates-and-times" xmlns:set="http://exslt.org/sets" xmlns:xalan="http://xml.apache.org/xalan" xmlns="http://www.w3.org/TR/REC-html40"><checkEnvironmentExtension>
<EnvironmentCheck version="$Revision: 1.7 $">
<environment>
<item key="java.version">1.4.0</item>
<foundJar desc="apparent.version" name="xalan.jar">xalan.jar WARNING.present-unknown-version</foundJar>
<foundJar desc="path" name="xalan.jar">/usr/local/java/xalan/bin/xalan.jar</foundJar>
<foundJar desc="apparent.version" name="crimson.jar">crimson.jar from jaxp-1.1</foundJar>
<foundJar desc="path" name="crimson.jar">/usr/local/java/tomcat/lib/crimson.jar</foundJar>
<foundJar desc="apparent.version" name="jaxp.jar">jaxp.jar from jaxp-1.1</foundJar>
<foundJar desc="path" name="jaxp.jar">/usr/local/java/tomcat/lib/jaxp.jar</foundJar>
<item key="version.JAXP">1.1</item> <item key="java.ext.dirs">/usr/local/java/j2sdk1.4.0/jre/lib/ext</item> <item key="version.crimson">not-present</item> <item key="version.SAX">2.0</item> <item key="java.class.path"> .:/usr/local/java: /usr/local/java/jdk/lib: /usr/local/java/jdk/jre/lib/rt.jar: /usr/local/java/jconn/classes/jconn2.jar: /usr/local/java/xalan/bin/xalan.jar: /usr/local/java/xalan/bin/xml-apis.jar: /usr/local/java/xalan/bin/xercesImpl.jar: /usr/local/java/xsl-ext: /usr/local/java/fdf/lib/jFdfTk.jar: /usr/local/java/tomcat/lib/ant.jar: /usr/local/java/tomcat/lib/check: /usr/local/java/tomcat/lib/crimson.jar: /usr/local/java/tomcat/lib/jasper.jar: /usr/local/java/tomcat/lib/jaxp.jar: /usr/local/java/tomcat/lib/servlet.jar: /usr/local/java/tomcat/lib/test: /usr/local/java/tomcat/lib/webserver.jar: /usr/local/java/jdk/lib/tools.jar </item> <item key="version.xerces">not-present</item> <item key="sun.boot.class.path"> /usr/local/java/j2sdk1.4.0/jre/lib/rt.jar: /usr/local/java/j2sdk1.4.0/jre/lib/i18n.jar: /usr/local/java/j2sdk1.4.0/jre/lib/sunrsasign.jar: /usr/local/java/j2sdk1.4.0/jre/lib/jsse.jar: /usr/local/java/j2sdk1.4.0/jre/lib/jce.jar: /usr/local/java/j2sdk1.4.0/jre/lib/charsets.jar: /usr/local/java/j2sdk1.4.0/jre/classes </item> <item key="version.DOM.draftlevel">2.0fd</item> <item key="version.xalan2">Xalan;Java;Xalan Java 2.2.D11;</item>
<item key="version.DOM">2.0</item> <item key="version.xalan1">not-present</item> </environment> <status result="OK"></status> </EnvironmentCheck> </checkEnvironmentExtension> </out>
Looks like it is finding my installed 2.5.1 jars.
Then I set up an endorsed dir and tried things again. checkEnvironment() reported _exactly_ the same as above. And I get exactly the same error behavior reported in my original message.
A crimson/jaxp version problem due to using Tomcat 3.2.3? Or perhaps a problem with JDK 1.4.0?
Thanks,
Everett
Everett Stauffer <[EMAIL PROTECTED] To: [EMAIL PROTECTED] d.edu> cc: Subject: EXSLT problem - XalanJ 2.5.1 10/06/2003 09:53 PM Please respond to xalan-dev
Hi folks-
Maybe I'm missing something but I can't seem to get exslt functions to work with XalanJ 2.5.1.
I've declared the namespace: xmlns:set="http://exslt.org/sets"
I'm trying to setup a nodelist with: <xsl:variable name="orgs" select="set:distinct(//ORG)"/>
I get the following error: javax.servlet.ServletException: java.lang.NoSuchMethodException For extension function, could not find method org.apache.xpath.axes.DescendantIterator.distinct([ExpressionContext,] ).
This is on Tomcat 3.2.3, with JDK 1.4.0.
Mind you, I've been using Xalan for a couple of years without any problems.
Just for kicks, I tried something even more brain-dead:
xmlns:date="http://exslt.org/dates-and-times"
The following: <xsl:value-of select="date:dateTime()"/> produces: javax.servlet.ServletException: javax.xml.transform.TransformerException: Instance method call to method dateTime requires an Object instance as first argument
Which is pretty surprising considering that the API docs state: static java.lang.String dateTime() The date:date-time function returns the current date and time as a date/time string.
Soooo, what am I missing in using EXSLT functions?
TIA,
Everett
