Re: [xsl] xsl:import and jar files

Subject: Re: [xsl] xsl:import and jar files
From: Robert Koberg <rob@xxxxxxxxxx>
Date: Sat, 27 Nov 2004 07:41:58 -0800
xptm@xxxxxxx wrote:
Can't i have more help on this? I give up on the

<xsl:import href="concat({$jar},'resources/xfunctions.xsl')" />

but i still have problems with document().


Do you have the jar on your classpath? Depending on where it is in relation to your URIResolver you could do something like:

public Source resolve(String href, String base) {
...
  InputStream is = null;
  //URL url = null;
  if (href.startsWith("jar:")) {
    is = this.getClass().getResourceAsStream("some.xsl");
    //url = this.getClass().getResource("some.xsl");
  }
...
}

if it is not on your classpath, you could use the apache jakarta commons (sandbox) VFS (virtual file system) library to access jars (zips and many others):

http://jakarta.apache.org/commons/sandbox/vfs/filesystems.html#Zip%20and%20Jar

best,
-Rob


Also, i use Xalan <redirect:write file="resources/tables.xml"> and i can't seem to work with that correctly, i mean, i can't define where the file will be.


Thanks all.




Citando xptm@xxxxxxx:


I wonder if this mail ever get to the list, because i've posted it with no
subject and get rejected...


Hello all:

I don't know if this question should be posted on this list, but...

I have in my XSLT a

<xsl:import href="xfunctions.xsl" />

that works OK when the file whose name is "xfunctions.xsl" is
on the file system.

However i'm trying now to access it in a resource file (a
Java JAR file), but i get error from the parser saying it
won't find the file.

Any toughts?

Thanks all.

I've made some progress now, by *not* changing the XSLT at all and put all the "looking" stuff on a Java URIResolver. However i still have problems.

- i had a lot of troubles trying to do something like
 <xsl:param name="jar"
select="'jar:http://intranetdev/Site/java/GTInfo.jar'"/>
 <xsl:import href="concat({$jar},'resources/xfunctions.xsl')" />
why is that?

- it seems to work with xsl:import and xsl:include but not when using
document(). Shouldn't that have the same beahviour?

I'm very sorry if this isn't the place to ask these questions.

Regards.








Ganha Cbmaras de Filmar, Televisues e outros fantasticos primios Samsung com o SAPO! Clica em http://dc.sapo.pt/sfc

Current Thread