Apache Sling as an OSGi-powered REST middleware


Apache Sling is an innovative web framework built on top of the Java Content Repository (JCR), that uses OSGi for its component model and fosters RESTful application design.

Apache Sling is designed as a set of loosely coupled OSGi bundles aggregated into a single jar or war launcher. Extensibility is internally achieved by using OSGi services. Even though Sling was initially designed for JSR-283 content repositories, building on top of the OSGi service registry allows plugging in multiple data sources - resource providers in Sling parlance.

In this talk we will showcase the usage of OSGi extension points in Apache Sling which allows usage of multiple resource providers, from simple filesystem-based providers to complex ones like MongoDB or Cassandra. Running all providers at the same time allows Apache Sling to be used as a REST-based middleware for multiple data sources.

This talk will present how this extensibility allows plugging in multiple data sources

Session details
Speaker(s): Session Type: Experience level:
Track: Tags:
Schedule info
Session Time Slot(s):
Thursday, November 5, 2015 - 11:15 to 11:50


Hi Robert,
after checking with the OSGi crowd we decided to move this proposals to the OSGi track. If you don't want the talk to be on that track please change it back until August 14th, 14:00h at the latest.

Public comment

Please provide some information how your two submissions differ. From the looks they are two different points of view on the same technology, but this might be just my perception.

Furthermore, please refrain from adding AEM marketing. The ECE attendees don't like sales talks. I trust that you will focus on the OSS parts like JRC, Sling, etc.

Public comment


The 'effective web dev' talk focuses on the classical usage for Sling-based applications: a content-driven application backed by a Java Content Repository ( typically Apache Jackrabbit ) and how such an application is built, what are the key advantages of using Sling, etc

The 'REST middleware' talk is a more focused talk discussing how the Sling Resource API abstraction can wrap / work with multiple data sources and form one coherent view.

You are correct and in a sense they are two points of view on the same technology, with the first one being more broad and general and the second one being more specific.

I submitted two talks in order to have better chances to align with the conference's goals and program, but I don't think it makes a lot of sense to deliver them both in the same conference.


I am pretty good at avoiding talking about commercial offering at Open Source conferences :-) . Some of my recent talks definitely support that statement

- http://www.slideshare.net/rombertw/effective-web-application-development... ( ApacheCon )
- http://www.slideshare.net/rombertw/oak-scale-your-content-repository-to-... ( TopConf )
- http://www.slideshare.net/rombertw/sling-ide-tooling ( AdaptTo )
- http://www.slideshare.net/rombertw/dependency-injection-spring-guice-osgi ( Bucharest JUG )


Public comment