Я хочу использовать анти-samy из OWASP. У них есть объект Policy, который создается с помощью фабричного метода.Spring: Injecting Resource as InputStream в заводской метод
InputStream, который необходимо передать фабричному методу, представляет собой конфигурационный файл для объекта политики.
Можно ли создать политический компонент в конфигурации контекста весны xml? Я знаю, что есть объект Resource, который может загружать файлы из classpath. Но мне нужно сделать InputStream из этого ресурса. Могу ли я сделать это непосредственно в контексте xml-spring? Или мне нужно написать Java-код, чтобы получить InputStream?
Эй, я не понимал, что Весна может принуждать к «InputStream», это аккуратно. Обратите внимание, однако, что Spring не закрывает 'InputStream' сам, он предполагает, что bean будет делать это. Если класс 'Policy' не закрывает этот поток, вы получите утечку. – skaffman
Хорошо наблюдается. Политика не закрывает InputStream: http://code.google.com/p/owaspantisamy/source/browse/trunk/Java/current/antisamy-project/antisamy/src/main/java/org/owasp/validator/html. /Policy.java#210. Это должно быть сообщено как ошибка, я думаю, –
Hm, тогда я открою и закрою InputStream в java-коде. Однако конструктор выглядит аккуратно, но когда я его пробовал, я получаю исключение FileNotFoundException, которое говорит мне, что он не может найти ' Путь к классам: темп-antisamy.xml. Как-то префикс classpath не отделен от имени файла –
nebenmir