Как узнать имя файла веб-фрагмента - PullRequest
1 голос
/ 19 марта 2012

В сервлете 3 веб-фрагменты представляют собой файлы jar, развернутые в соответствии с WEB-INF / libs WAR.Ресурсы веб-фрагментов будут объединены и проданы, поскольку они являются ресурсами WAR.Но это не подходит для любой ситуации.

Например, когда я хочу получить некоторые ресурсы в каталоге WEB-INF веб-фрагмента, я не могу читать их напрямую, потому что независимо от того, находится ли он в кувшине или в войне, ресурсы в WEB-INF просто недоступный по URL.Хуже того, типичный способ чтения такого ресурса с помощью ServletContext не работает для веб-фрагментов, потому что они являются банками, а не реальной структурой каталогов.

Наконец-то я нашел решение, чтобы прочитать их с помощью ClassLoader, в любом случае мне все еще нужно точное имя ресурса, я не могу сделать что-то вроде предоставления мне всех XML-файлов в каталоге WEB-INF / myconfig / Единственный способ, которым яЯ думаю, это сканировать все фляги веб-fragement, построить структуру каталогов в памяти.Однако я до сих пор не знаю, как получить баночные имена всех веб-фрагментов.Если я не могу их получить, я должен отсканировать все банки в WEB-INF / libs.Есть ли лучшее решение?

Спасибо

...