Apache Sling is an OSGi-based framework for RESTful web-applications using an extensible content tree. In a nutshell, Sling maps HTTP request URLs to content resources based on the request’s path, extension and selectors. Using convention over configuration, requests are processed by scripts and servlets, dynamically selected based on the current resource. This fosters meaningful URLs and resource-driven request processing, while the modular nature of Sling allows for specialised server instances that include only what is needed.
Everyone deploying an OSGi bundle on a running system will have encountered a Resolution failed exception, due to some missing import packages. Although it may seem as a pain in the ass, the OSGi resolver can actually make your life a lot easier when used properly. In this talk we will go through the process of resolution, explain the requirement-capability model, and show how you can automatically assemble your application by using the resolver at build time. It's time for the re(s/v)olution!