Я создаю фильтр сервлета, который должен обрабатывать запросы только к определенным путям в моем приложении.Добавить фильтр сервлетов для нескольких путей во встроенном Jetty
Я могу добавить фильтр к моему ServletContextHandler легко, например, так:
FilterHolder holder = new FilterHolder(new MyFilter());
holder.setInitParameter("param", "a");
contextHandler.addFilter(holder, "/x", EnumSet.allOf(DispatcherType.class));
Но как я могу добавить больше путей к этому фильтру? Я хочу, чтобы он обрабатывал запросы к /y
.
Я не могу найти простой и правильный способ сделать это. Используя web.xml, я бы просто определил несколько тегов <url-pattern>
под отображением фильтра.
Использование Jetty версии 9.3.0.v20150612.
Я попробовал, но метод инициализации фильтра был вызван несколько раз, что кажется неправильным. – elanh
Да, вы увидите несколько вызовов Filter.init(). но в каждом вызове есть те же «FilterConfig.getName()» и «FilterConfig.getServletContext()». –
Есть ли способ сделать это прилично? Потому что у меня около 50 конечных точек, которые в ней нуждаются, и около 5, у кого нет ... Не существует ли белый механизм вместо механизма черного списка? –