Я новичок в Джерси и сервлетов в целом так что надеюсь, я просто отсутствует что-то просто ...Обслуживание статических файлов с Джерси 2
У меня есть приложение Джерси (v2.13) и работает используя Guice (3.0) для инъекции зависимостей вместе с некоторыми статическими файлами в src/main/webapp. Если я привяжу свой сервлет-сержант к чему-либо другому, кроме/*, и сделаю запрос на статический файл в папке webapp, он не будет обслуживаться без проблем. Если я привяжу свой сервлет к корню, любой запрос на статический файл будет выполнен с помощью 404.
Я бы предпочел, чтобы сервлет-сержант был сопоставлен с корнем, но мне также нужно иметь возможность обслуживать статические содержание. Есть ли способ сделать это? Возможно, чтобы сопоставить сервлет Джерси с корнем, но игнорировать запросы для/assets/* или что-то подобное?
Вот моя web.xml:
<filter>
<filter-name>guice-filter</filter-name>
<filter-class>com.google.inject.servlet.GuiceFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>guice-filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>com.example.MyGuiceServletContextListener</listener-class>
</listener>
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.example.MyResourceConfig</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>