Re: [xsl] Java list extension

Subject: Re: [xsl] Java list extension
From: Hermann Stamm-Wilbrandt <STAMMW@xxxxxxxxxx>
Date: Tue, 5 Jul 2011 17:34:35 +0200
> ...
> That's using Saxon, so you'll need the PE or EE versions, or the 
> older 'B' version where calls to java are allowed.

thanks to all who replied.

Summary seems to be:
# access to XML files by select=*.(xml|xsl) is fine with document-uri()
# access to Non-XML file names with calling out to Java possible
# passing in list of files as parameter is possible


Mit besten Gruessen / Best wishes,

Hermann Stamm-Wilbrandt
Developer, XML Compiler, L3
Fixpack team lead
WebSphere DataPower SOA Appliances
https://www.ibm.com/developerworks/mydeveloperworks/blogs/HermannSW/
----------------------------------------------------------------------
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschaeftsfuehrung: Dirk Wittkopp
Sitz der Gesellschaft: Boeblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294 



From:   Andrew Welch <andrew.j.welch@xxxxxxxxx>
To:     xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Date:   07/05/2011 02:36 PM
Subject:        Re: [xsl] Java list extension



> how can you get the names of non-XML files?

Ahh ok, well for that you can do:

(xmlns:File="java:java.io.File")

<xsl:variable name="directory" select="'C:\path\to\directory'"/>
    ^^^^^^^ notice the windows path here, you could create a URI if
you want instead (java.net.URI)
<xsl:variable name="dir" select="File:new($directory)"/>
<xsl:variable name="files" select="File:listFiles($dir)"/>

<xsl:for-each select="$files">
    <xsl:choose>
        <xsl:when test="File:isDirectory(.)">
            Dir: <xsl:value-of select="."/>
        </xsl:when>
        <xsl:otherwise>
            File: <xsl:value-of select="."/>
        </xsl:otherwise>
    </xsl:choose>
</xsl:for-each>

That's using Saxon, so you'll need the PE or EE versions, or the older
'B' version where calls to java are allowed.

-- 
Andrew Welch
http://andrewjwelch.com

Current Thread