Не удается получить доступ к ресурсам контекста с помощью встроенной Jetty - PullRequest
0 голосов
/ 08 июля 2019

Я включил веб-приложение Jetty, оно построено аналогично этому примеру: https://github.com/jetty-project/embedded-jetty-live-war

Я пытаюсь получить доступ к файлу ресурса с помощью SerletContext:

ServletContext ctx = ...;
InputStream stream = ctx.getResourceAsStream("/WEB-INF/classes/jdbc.properties");

, но яполучаю null вместо input-stream.Я проверил, что этот файл доступен в окончательном архиве войны:

$ cd ./livewar-assembly/target/
$ unzip livewar-assembly-1.0-SNAPSHOT.war 
$ find . -type f -name jdbc.properties
./WEB-INF/classes/jdbc.properties

Я создаю сервер с этим кодом:

final Server server = new Server(port);
final WebAppContext webapp = new WebAppContext();
final Configuration.ClassList classes = Configuration.ClassList
    .setServerDefault(server);
classes.addBefore(
    "org.eclipse.jetty.webapp.JettyWebXmlConfiguration",
    "org.eclipse.jetty.annotations.AnnotationConfiguration"
);
webapp.setContextPath("/");
webapp.setWar(WAR.toString());
server.setHandler(webapp);

Почему я не могу получить доступ к ресурсуфайл и как я могу это исправить?

...