Ваш код не работает, потому что ContextHandler
на самом деле не обслуживает контент.Небольшая настройка сделает своего рода работой, но чтобы сделать то, что вы действительно хотите, вам нужно написать свой собственный обработчик.
" сортировка работает"версия:
ContextHandler capHandler = new ContextHandler();
capHandler.setContextPath("/clientaccesspolicy.xml");
ResourceHandler resHandler = new ResourceHandler();
resHandler.setBaseResource(Resource.newClassPathResource("clientaccesspolicy.xml"));
capHandler.setHandler(resHandler);
Но , эта версия обрабатывает /clientaccesspolicy.xml
как каталог, поэтому она перенаправляется на /clientaccesspolicy.xml/
и затем отображает содержимое файла XML.
То, что вам нужно, это версия ResourceHandler
с поиском url => resource .Jetty не поставляется с обработчиком, который делает это, но вы должны иметь возможность создать подкласс ResourceHandler
и затем переопределить getResource
.В этом случае вам не понадобится [или вы захотите] ContextHandler, просто проверьте наличие вызовов «/clientaccesspolicy.xml» и сопоставьте его с правильным ресурсом ClassPath.