parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Проблемы с ^xdoc::create[]

Rafael 19.03.2008 17:38

Суть проблемы такая:
делаю новую версию сайта под виндовый веб-сервер Eserv.

У меня в CMS-ке используются шаблоны на XSL.

Раньше я использовал статические шаблоны и обрабатывал их следующим образом:
$src[^xdoc::create{$source}]
$transformed[^src.transform[$stylesheet]]
^transformed.string[
	$.method[xhtml]
	$.indent[no]
	$.encoding[$response:charset]
]
$src[]
$transformed[]
В $source - я забивал XML-дерево страницы
В $stylesheet - путь к файлу XSL

Теперь, у меня работает немного иная схема: в XSL-шаблонах используються динамические области. Я подгружаю шаблон в переменную
$xslTemplate[^file::load[text;${xslPath}${stylesheet}]]
После чего обрабатываю ее вставляе необходимые импорты:
$stileS[^untaint{^xslTemplate.text.match[<!--import-->][i]{^curComList.menu{
	^if(($curComList.type ne "html") && (!^importTable.locate[lib;$curComList.lib])){
		<xsl:import href="mod/${curComList.lib}.xsl"/>
		^importTable.append{$curComList.lib}
	}
}}}]
После чего получившийся текст передаю в переменную $stylesheet
$sheet[^xdoc::create[$xslPath]{$stileS}]
Где в $xslPath указываю путь к папке с XSL относительно корня (/xsl/)

Под Apache все работает. А вот под Eserv Parser теряет пути:
I/O warning : failed to load external entity "mod/news.xsl"
compilation error: file …//xsl/ element import
xsl:import : unable to load mod/news.xsl
I/O warning : failed to load external entity "lank/layout.xsl"
compilation error: file …//xsl/ element import
xsl:import : unable to load lank/layout.xsl
Как сделать так, чтобы ^src.transform не терял пути?