I don’t know how to proceed with a simple guice example. After reading the documentation I’ve done the following:
- setup the guiceFilter
- created an injector and instantiated a new ServletModule in a
GuiceServletContextListenerand added the listener to web.xml - bound
serve("*.jsp").with(IndexController.class);in configure servlets
After I’ve done that how do I use dependency injection? Let’s say I have an index.jsp, IndexController.class (servlet), and two classes called Person and Order with Person depending on Order. How do I inject the Order dependency into the Person constructor via guice and after I do that I would need to return say a list of this person’s orders back to the controller? I’ve used Ninject with ASP.NET MVC in the past and that was pretty simple, but I’m very confused on how to implement even the simplest DI example with Guice. Thanks.
To get started, here’s an example that injects a service returning a list of names into an index controller. (No trickery in this example, everything is explicit.)
ListServiceinterface defines simple service.DummyListServiceprovides trivial implementation.ListModulewiresListServiceto the dummy implementation.GuiceServletContextListenerimplementation maps a servlet to index, and creates aListModuleas above.IndexControllerputs the names into the request scope (manually) and forwards to a JSP page.JSP page dumps the names (fragment only).