Ошибка проверки Java при обработке XSLT-преобразования для FPML - PullRequest
0 голосов
/ 08 января 2019

Я преобразовываю FPML в канонический XML, используя преобразование X-S-L-T, используя xslt 1.0 с Java 1.7 TransformerFactory.

Все работает нормально с 2000+ строками X-S-L-T с несколькими тегами когда и для каждого, но он вылетал, когда я добавил еще несколько строк кода. Когда я удалил несколько строк кода, он снова начал работать нормально. Поэтому я хочу знать, есть ли ограничения на количество строк кода, которые можно использовать в файле XSLT.

1 Ответ

0 голосов
/ 08 января 2019

Это определенно похоже на ошибку в процессоре XSLT. Это может или не может быть из-за размера вашего кода XSLT. Вы можете попробовать разбить ваш код XSLT на более мелкие блоки (шаблоны), чтобы посмотреть, решит ли это проблему. Или вы можете посмотреть, есть ли способ отключить генерацию байтового кода XSLTC, где происходит сбой (Xalan имеет как интерпретируемый, так и скомпилированный режимы выполнения).

Вы также можете, конечно, переключиться на Saxon - на платформе Java действительно нет причин использовать версию XSLT, которой уже почти 20 лет, и даже при достаточно простых требованиях вы получите значительные преимущества в производительности благодаря новой функции в XSLT 2.0 и 3.0.

...