Kikaha's micro Routing API was developed to provide an easy to use routing mechanism, avoiding repetitive codes while developing routes with Undertow API. Creating layers above the original framework used to decrease the runtime performance. Thus, to keep performance very close to Undertow's low-level routing API, kikaha-urouting
module makes use of Java's Annotation Processing Tool(a.k.a. APT) to create a tiny layer between your code and the Undertow's API.
Almost all Build Tools (e.g. Maven, Gradle, Sbt, etc), has transparent support to APT and developers often doesn't have to care about its configurations. Java IDEs, in other hand, may not provide APT configured out-of-box. Thankfully, they ofeten provide a set of configurations parameters to make developed software well integrated with generated sources from APT based libraries.
The JetBrains developers brings a default profile on its IDE that handle APT libraries out-of-box, handling transparently the generated sources and asset files. You can improve IDEA's default configurations following these instructions.
Netbeans developers also worked to keep development with APT-based libraries transparent. Once it was coded very close to javac API it could take the best from Oracle's compiler to make developer's life easy while developing against APT-based libraries. Read more about NetBean's APT support here.
Eclipse is known as the most versatile development environment available. To support its huge set of plugins, Eclipse IDE developers developed a customized Java Compiler called Eclipse JDT compiler (EJC). Every plugin access and interactions with Java files are handled by EJC compiler. If have created an Eclipse project from scratch you probably won't have problems dealing with APT-base libraries.
But, if you just imported an Maven Project, you better configure Eclipse to delegate Annotation Processing to the Eclipse's compiler. However, to work correctly, m2e-apt
connector should be installed first. Install it from Eclipse marketplace.
Enable JDT/APT autoconfiguration from Maven dependencies globally or per project.
Pictures linked from Immutable's documentation post about APT with Eclipse.
WELCOME About Kikaha philosophy
GETTING STARTED Getting started in 1 minute Creating a Kikaha maven project Architecture overview
TUTORIALS Logging configuration Configuring the server Creating your first HTTP route Kikaha's command line interface Configuring your favorite IDE Wro4j Integration
CORE FEATURES HTTP and HTTPS Routing static assets Dependency injection Authentication and authorization Smart routes
ESSENTIAL MODULES μRouting API WebSocket Routing Database Connection Pool JSON with Jackson Protobuf Mustache Templates Rocker Templates BCrypt
CLOUD MODULES Overview of Cloud Modules Consul.io Codahale's Metrics Auth0 Single Sign-On μWorkers - Actor-like API Hazelcast
AWS-RELATED MODULES Overview of AWS-Related Modules Deploying Applications on AWS AWS IAM Credentials AWS EC2 AWS SQS queues AWS CloudWatch metrics AWS Application Load Balancer AWS Lambda functions AWS X-Ray
ADVANCED TOPICS Creating custom modules Routing with Undertow's API Creating custom cloud modules