Как программно вызвать XML Calabash из Java

Я не могу найти пример или указание на то, как вызывать XML Calabash (реализация Xproc) для запуска из Java. Требования просты:

  1. Элемент списка Возможность программно указывать входы и выходы.
  2. Элемент списка Возможность работать одновременно, поскольку мы хотим, чтобы это был процесс, работающий на сервере Jetty.

    • Thanks

person aym    schedule 02.04.2013    source источник


Ответы (2)


Вам следует взглянуть на Servlex и, в частности, здесь https://github.com/fgeorges/servlex/tree/master/servlex/src/java/org/expath/servlex/processors

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

person innovimax    schedule 02.04.2013
comment
Спасибо! Это именно то, что я искал. В остальном проект тоже выглядит многообещающе. - person aym; 04.04.2013

Да, вы можете посмотреть на Servlex, в частности https://github.com/fgeorges/servlex/tree/master/servlex/src/java/org/expath/servlex/processors/saxon, а точнее CalabashXProc и CalabashPipeline.

На данный момент Servlex компилирует конвейер для каждого выполнения, поскольку в Calabash нет идеального разделения между временем компиляции и временем выполнения. Раньше Servlex кешировал результат компиляции и сбрасывал его после каждого использования, но если два запроса приходят одновременно, то они фактически используют одну и ту же среду динамической оценки, а значит, ну БУМ!

Норм работает над этим и добился определенного прогресса, но я думаю, что не мешало бы ему услышать ваш голос, если вам нужно иметь возможность кэшировать скомпилированные конвейеры и одновременно оценивать несколько экземпляров (написав в XProc Dev или в Calabash трекер проблем).

Если вы заинтересованы в Servlex, веб-сайт находится по адресу http://servlex.net/. Если вы хотите запускать конвейеры для ответа на HTTP-запросы, это, вероятно, хороший выбор, поскольку он уже содержит много шаблонного кода и позволяет вам писать свои конвейеры декларативным способом (URI запроса, на который он отвечает, объявляется в дескриптор веб-приложения, манипулирует HTTP-запросом и генерирует HTTP-ответ в виде XML-документов). Это реализация спецификации веб-приложений EXPath (ссылка на веб-сайте Servlex).

PS: Извините за отсутствие прямых ссылок, но StackOverflow не позволяет мне размещать более 2 ссылок (что я могу понять на самом деле...)

person Florent Georges    schedule 29.04.2013