Как загрузить файлы / свойства из каталога WEB-INF?

Кажется, что в моем приложении Tapestry я не могу загрузить ini-файлы или файл свойств из каталога WEB-INF или пути к классам.

Я пробовал несколько разных методов, которые должны загрузить мой файл, но ни один из них не сработал.

  1. бывший

realm.setResourcePath("/WEB-INF/auth.properties");

  1. бывший

realm.setResourcePath("classpath:wip/pages/auth.properties");

Мне нужно загрузить файл свойств /ini, чтобы использовать модуль безопасности гобелена, основанный на Широ.

Спасибо за помощь!

4 ответа

Решение

Корень пути к классам - это путь. Поместите ваш файл в src / main / resources / auth.properties, затем установите ваш resourcePath с помощью realm.setResourcePath("classpath:auth.properties");

Проверьте ExtendedPropertiesRealm и тестовый пакет безопасности гобелена для примера

Пытаться ServletContext.getResourceAsStream("/WEB-INF/auth.properties") или же ServletContext.getResourceAsStream("WEB-INF/auth.properties")

ServletContext должен использоваться из servlet, servletListener и т. Д.

Пытаться

Properties props = new Properties();
props.load(new FileInputStream(new File(req.getServletContext().getRealPath("/WEB-INF/fileName.properties"))));
System.out.println(props);

Я нашел самый простой способ

  • положить файл в src / main / resources / config.properties. Это будет помещено в /WEB-INF/classes/config.properties, когда проект компилируется maven в WAR

  • прочитать файл из сервлета со следующим

    InputStreaminputStream = getClass(). GetClassLoader(). GetResourceAsStream ("config.properties");

https://crunchify.com/java-properties-file-how-to-read-config-properties-values-in-java/

Другие вопросы по тегам