Java Web MVC Framework Fork me on GitHub
About Documentation Downloads Javadocs Source FAQ Feedback

Mojave (pronounced Mo-hav-ee) is an annotation-driven, POJO-based web application development framework for Java. It borrows ideas from Spring Web MVC and EJB 3.1, and incorporates Guice. It attempts to:

  • facilitate TDD and Dependency Injection, and ultimately the development of decoupled components, by providing IoC capabilities
  • remove concurrency concerns from web application development by providing a single-thread programming model
  • remove cross-cutting concerns from web application development by supporting AOP through the interceptor pattern
  • be as minimally intrusive a framework as possible; it tries to get out of your way by minimizing framework-related metadata and biolerplate code

Mojave also:

  • supports building RESTful applications: controller actions can be bound to specific HTTP methods and URIs
  • supports JSP out-of-the-box
  • is small and lightweight
  • has very high test coverage, making the framework easy to change

Mojave MVC incorporates the Google Guice framework. All user components in the application can be configured with injectable dependencies, through use of the standard @Inject annotation. Injection is configured through user-supplied Guice Modules, using only idiomatic Java. Mojave also works out-of-the-box on Google App Engine and AWS Elastic Beanstalk.

We'd be happy to hear from you. If you have questions, please post them to our Google Groups discussion group.