[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[jetty-users] Equivalent of HandlerList for Servlets
|
Hi,
I have the practical need of splitting up a protocol implementation in 3 “parts”, because the protocol does a kind of “staged” setup whereby a connection goes through these steps in order. I also need the benefits of Contexts to maintain some state. Ideally, I would like to have the equivalent of a HandlerList but for Servlets being added to a ServletContextHandler. How could this be achieved?
Wrt to this question, I am confused about the ServletHolder.setServletHandler(). What is its purpose? Does it replace the handle() methods of the Servlet.class that is fed to the ServletHolder? Obviously, I tried to use setServletHandler() with a HandlerList, but that does not work. It is a bit lacking in the documentation and examples of how to used embedded Jetty.
My first attempt was something along the lines of
HandlerList setupHandlers = new HandlerList();
setupHandlers.addHandler(new StageOneHandler());
setupHandlers.addHandler(new StageTwoHandler());
setupHandlers.addHandler(new StageThreeHandler());
ServletHandler setupHandler = new ServletHandler();
setupHandler.setHandler(setupHandlers);
ServletHolder setupHolder = new ServletHolder(DefaultServlet.class);
pairSetupHolder.setServletHandler(setupHandler);
But I clearly missed something from an architecture point of view
The (IMO) ugly workaround is to put the 3 stages in a regular Servlet, and do an if-then based on some bytes of the protocol payload, but I prefer the more beautiful solution ;-) Any help is welcome
Thanks
Karel