Welcome to dropwizard-guicey

Guice integration for dropwizard.

Release notes - Support - License

Main features

  • Auto configuration: use classpath scan to find and install extensions automatically without manual configurations (of course, manual mode is also possible)
  • Web (servlets, filters):
    • supports both contexts (main and admin)
    • guice ServletModule support is enabled by default (could be disabled)
    • jee web annotations (@WebServlet, @WebFilter) support (could be enabled)
  • Dropwizard style reporting: detected (and installed) extensions are printed to console to remove uncertainty
  • Admin context rest emulation
  • Test support: custom junit and spock extensions
  • Developer friendly:

How to use docs

  • Getting started section covers installation and main concepts. Ideal for introduction.
  • User guide section contain detailed features descriptions. Good to read, but if no time, read as you need it.
  • Installers section describes all guicey installers. Use it as a hand book for extensions declaration.
  • Examples section contains common example cases. Look also examples repository for additinoal examples.
  • Extras section covers extra modules: admin rest, 3rd party integrations (event bus, jdbi) provided by guicey itself or extensions project.

Sources structure

The main repository contains library itself and this documentation sources.

Guicey stays as feature complete library with commonly used core integrations and rich api for building custom integrations (for specific needs). It's very close to guice philosophy of being simple and stable.

Examples repository holds examples of main features usage, dropwizard bundles integrations and extensions samples.

Extensions repository contains guicey external integrations.

Extensions project shows what is possible to achieve based on guicey. Besides, provided integrations itself might be quite useful.

BOM module unifies dependencies management for extensions, dropwizard and guice (as it includes boms for them). Overall, extensions project is more like spring: growing set of solutions for everything (more "enterprisy").