Импорт XSL, вызывающий исключение FileNotFoundException в веб-приложении - PullRequest
6 голосов
/ 17 января 2011

У меня есть простое веб-приложение под websphere5. Под appDir\WEB-INF\classes\ у меня есть эти файлы:

  • main.xslt
  • templates.xslt

main.xslt содержит инструкцию

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

но приложение завершается ошибкой, когда main.xslt используется в коде Java. Как мне указать путь к импортированным файлам XSL, если они все находятся в одной папке (WEB-INF\classes\)?

Текст исключения:

java.io.FileNotFoundException: d: \ Program Files \ WebSphere \ AppServer1 \ templates.xsl (Система не может найти указанный файл. )

Ответы [ 2 ]

4 голосов
/ 17 января 2011

Для обработки включений необходимо предоставить пользовательский uri-resolver.В веб-приложении нет гарантии, что файловая система доступна, так как у вас может заканчиваться файл WAR.Взгляните на javax.xml.transform.URIResolver интерфейс и Transformer.setURIResolver ()

3 голосов
/ 17 января 2011

В зависимости от того, как вы загрузили main.xsl , , может потребоваться установить свойство SystemID , чтобы оно могло разрешить относительный путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...