setSystemId not recursive for included stylesheets? 2003-02-07 - By Rhodes, Phillip C.
It appears that there are two solutions for this. Short synopsis of the problem was that setSystemId does not apply to stylesheets that were n deep via includes...
1) Refactor the xsl so that all the includes happen in the master. I don't know about this one... Might get several more xsl's
2) get setSystemId to work... I set the setSystemId on both the xsl and xml documents to the root of my webserver. However no includes resolve that are absolute...
Example: my webserver root is /usr/local/www/ my xsl is in /usr/local/www/xsl
I set the systemid on the xml and xsl sources to "/usr/local/www" I do absolute include of "/xsl/samples/sample.xsl" , this will fail. If I do an include of "xsl/samples/sample.xsl", it works for the first include, but if sample.xsl does an include, the root of the document is no longer "/usr/local/www", but "/usr/local/www/xsl/samples" and all xsl includes have to be relative from there.
Any guidance or suggestions are appreciated. I will keep experimenting.
-----Original Message----- From: "Braum�ller, Hans" [mailto:H.Braumueller@(protected)] Sent: Friday, February 07, 2003 3:36 AM To: xalan-j-users@(protected) Subject: RE: setSystemId not recursive for included stylesheets?
Hi Philipp,
i had a similar problem. I solve it, with setting the systemId as the root of my webserver. Then you only need include as an absolute path from there: <xsl:include href="/xsl/util/jsp/xmlui.xsl"/> -------------------^
The other way, after xalan has find the first stylesheet you can include the second one from the location of the first one: <xsl:include href="util/jsp/xmlui.xsl"/>.
I hope this helps,
Hans Braum�ller -- + -- Mail Art Not War http://crosses.net
|
|