Обработка внешних файлов по HTTPS внутри XSLT2

Я использую функцию unparsed-text для анализа внешних файлов в XSLT. Это хорошо работает для HTTP-URL. Но при попытке загрузить через HTTPS не получается. Сначала я попытался ввести учетные данные внутри URL-адреса, логин и пароль (с URLEncoding или без него, необходимые для паролей со специальными символами) назначаются через параметры в XSLT (из кода JAVA с использованием библиотеки Saxon HE 9.3.0.5). Результат:

XTDE1170: java.io.IOException: сервер вернул код ответа HTTP: 401 для URL

URL-адрес правильный в любом браузере и покажет файл. Сертификат сервера импортируется через keytool (без этого появляется другое сообщение об ошибке...)

Моя следующая попытка связана с внешними библиотеками, т.к.

http://www.fgeorges.org/xslt/saxon-ext/#http

в результате чего

Ошибка при вызове функции расширения {public static net.sf.saxon.om.NodeInfo org.fgeorges.xslt.Exslt2.httpSend(net.sf.saxon.expr.XPathContext,net.sf.saxon.om.NodeInfo,java. lang.String) выдает net.sf.saxon.trans.XPathException}: Исключение в функции расширения java.lang.IllegalStateException: Есть еще один элемент?!? - Есть еще один элемент?!?

(... бьет меня...)

а также

http://www.expath.org/modules/http-client/

где я не могу импортировать его с помощью

<xsl:import href="http://expath.org/ns/http-client.xsl"/>

потому что указанный файл просто не существует...

Конец всей моей мудрости... ;) Любые идеи?

Спасибо и ура!


person Kai Woska    schedule 16.11.2011    source источник


Ответы (1)


Вы успешно установили пакет expath-saxon, как описано в этот пост (последние абзацы) ? очевидно, файл xsl ссылается только на реализацию java перегруженных методов отправки-запроса, поэтому вам может понадобиться только некоторый .xsl по строкам expath-http-client-saxon/xsl/expath-http-client-saxon.xsl из этот архив.

надеюсь, это поможет,

с уважением,

Карстен

person collapsar    schedule 24.11.2011