Я работаю над приложением Spring Boot. Мне нужно сначала разобрать XML-файл (country.xml). Проблема в том, что я не понимаю, куда его положить, чтобы получить к нему доступ. Структура моих папок
ProjectDirectory/src/main/java
ProjectDirectory/src/main/resources/countries.xml
Моя первая идея заключалась в том, чтобы поместить его в src / main / resources, но когда я пытаюсь создать файл (country.xml), я получаю NPE, и трассировка стека показывает, что мой файл просматривается в ProjectDirectory (поэтому src / main / resources / не добавляется). Я попытался создать файл (resources / countries.xml), и путь будет выглядеть как ProjectDirectory / resources / countries.xml (так что снова src / main не добавляется).
Я пробовал добавить это безрезультатно
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
registry.setOrder(Ordered.HIGHEST_PRECEDENCE);
super.addResourceHandlers(registry);
}
Я знаю, что могу добавить src / main / вручную, но хочу понять, почему он не работает должным образом. Я также пробовал примеры с ResourceLoader - безрезультатно.
Может ли кто-нибудь подсказать, в чем проблема?
ОБНОВЛЕНИЕ: на всякий случай. После создания проекта у меня возникла проблема с доступом к файлу, поэтому я изменил File на InputStream.
InputStream is = new ClassPathResource("countries.xml").getInputStream();