Использование XSLT из плагина IBM Content Navigator
У меня есть плагин для IBM Content Navigator, где пользователь отправляет запрос на сервер, а затем сервер применяет XSLT-преобразование к XML-файлу, хранящемуся в FileNet.
Я также использую этот код в автономном приложении Java, чтобы администратор мог также применять XSLT без использования интерфейса ICN.
Я пытаюсь поместить XSLT в свой файл Jar плагина и читаю, используя:
InputStream xslt = java.lang.ClassLoader.getSystemResourceAsStream("removeStamp.xslt");
Transformer transformer = factory.newTransformer(new StreamSource( xslt));
Это работает для отдельного приложения Java, но не для плагина ICN.
Как я могу использовать XSLT из jar плагина IBM Content Navigator?
1 ответ
Я полагаю, что это происходит из-за того, что ресурс не найден, обычно вы можете найти ресурс:
Если в том же пакете
InputStream is = <your class name>.class.getResourceAsStream("removeStamp.xslt");
То, как вы ищете, заставляет его искать файл в корне пути к классам. чтобы вы могли использовать
InputStream is = ClassLoader.getSystemClassLoader(). GetResourceAsStream("com/domain/appname/removeStamp.xslt");
Ядерная опция заключается в добавлении файла в корневой каталог пути к классам виртуальных машин (что не очень хорошо, но работает)