Мне нужны две реализации TransformerFactory для моего программного обеспечения. Я должен обработать xml и xls/fo (объект форматирования) для PDF-файлов. Для более новых версий нашего программного обеспечения, где я хочу использовать определяемые пользователем функции xsl, я использую net.sf.saxon.TransformerFactoryImpl, на который есть прямая ссылка в исходном коде. Из-за того, что старые данные в базе данных нуждаются в обработке старых с помощью org.apache.xalan.processor.TransformerFactoryImpl, saxon выдаст ошибку и не отобразит PDF.
При использовании Tomcat я просто установил «-Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl» в качестве аргумента vm, и это не было проблемой.
При использовании настройки Wildfly аргумент vm приводит к тому, что wildfly генерирует следующее исключение: «Исключение в потоке «основной» javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl не найден»
Xalan.jar содержится в моем военном файле. Версия xalan для jboss является частью дистрибутива Wildlfy.
Почему ни один из них не найден? Почему Wildfly даже пытается загрузить фабрику при запуске службы wildfly? Как настроить Wildfly для поиска фабрики трансформаторов xalan во время запуска? Запись записи модуля в standalone.xml или domain.xml не помогает.
Я знаю, что в Wildfly есть ошибка, из-за которой перенаправление фабрики трансформаторов указывает не на фабрику трансформаторов Wildfly, а на java по умолчанию. Я думаю, что это не должно иметь никакого влияния на мою проблему, потому что я пытаюсь установить другое значение по умолчанию.
Любая помощь?