Он грузит какую-то встроенную конфигу
У меня есть
- простая возможность подкладывать свои жарники в рантайм со своими ресурсами
- сложная последовательность действий как запатчить исходный жарник и переписать всё как надо, но лучше нет
Мне надо
- чтобы оно взяло мой кастомный конфиг
Хотелось бы сложить его в ресурсы и всё бы заработало, но как я понимаю берётся класслоадер самого класса и внешние ресурсы роли не сыграют.
Есть ли варианты чтобы не патчить исходный код?
Исходный код (который не очень хочется патчить напрямую)
private static URI getCacheConfigUri(String cacheName) {
try {
return DefaultHotRodConnectionProviderFactory.class.getClassLoader().getResource("config/" + cacheName + "-cache-config.xml").toURI();
} catch (URISyntaxException e) {
throw new RuntimeException("Cannot read the cache configuration for cache + " + cacheName, e);
}
}
Что такое "класслоадер самого класса", у вас же не по лоадеру на класс. Надо посмотреть что он реально берёт (какую имплементацию) в вашем окружении.
я вижу DefaultHotRodConnectionProviderFactory.class.getClassLoader(), я читаю что вижу Спросил совет)
Я имел в виду что то, какой конкретно класслоадер используется и как он резолвит ресурсы - зависит от окружения и от способа запуска приложения. В спрингбуте может быть один, в вайлдфлае другой и т.п.
Обсуждают сегодня