Embedded Jetty. Guice. RESTEasy. Jackson.
Clean, fast, embeddable framework.
-
Embedded Jetty Server container
-
Multi-stage, multi-source Application bootstrap. Set your config in JSON files, via Environment variables, or via startup arguments.
-
SSL handling and cert generation scripts.
-
Guice-based dependency injection
-
Ready for Gradle builds. Or possibly Maven, if you’re still stuck on crappy XML based build tooling.
-
Real world configuration scanning - Command line, system environment properties, and per development stage configuration files. With local overrides.
-
Client support
-
Advanced logging via Log4J2
-
Fantastic testing support
-
No magic.
-
Builder Pattern (ExampleModel.java) generated via the [BuilderGenerator IntelliJ plugin](https://github.com/ggranum/java-builder-gen)
-
TestNG
-
With Hamcrest and Mockito. Though, no examples of Mockito. Oops.
-
Log4j2
-
MIT Licensed
-
Portable, reusable domain knowledge. Very little custom, exclusive-to-Uttu learning required.
( Template GitHub Project coming soon… )
It is completely possible to structure your application into a single project
-
Add dependencies to your Gradle build file:
// @todo Update repository information
dependencies {
implementation "com.geoffgranum.uttu:core:${rootProject['versions.uttu']}"
implementation "com.geoffgranum.uttu:servlet:${rootProject['versions.uttu']}"
// Generally one doesn't add uttu-servlet and uttu-restclient to the same sub-project.
// implementation "com.geoffgranum.uttu:restclient:${rootProject['versions.uttu']}"
}