I am embedding jetty into my app, and trying to work out how to add servlet filters (for cookie handling). The wiki and the javadoc’s dont make it very clear, what am I missing:
Server server = new Server(port);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/");
FilterHolder f = new FilterHolder(new AuthorisationFilter());
context.addFilter(... f ...); // ?????
context.addServlet(new ServletHolder(new TestServlet()), "/");
The only info I have found on this is a forum post suggesting the documentation on this needs to be improved.
Update: For Jetty version 9.2.2:
Original answer ===
If you don’t want to use web.xml then use this:
If you do want to use web.xml, instead of the addFilter() methods, just make sure you have a WEB-INF/web.xml in your webapp root path with the following xml: