adaptTo() 2015 - 28th-30th September in Berlin
More information about adaptTo() 2015: Homepage
Sebastian Schlick, pro!vision GmbH
This rookie session provides a basic introduction in the principles and entities of Apache Sling.
Carsten Ziegeler, Apache Sling Chair
David Bosschaert, OSGi EEG co-chair
After the opening words Carsten Ziegeler and David Bosschaert introduce what's happened the last year in the Sling and OSGi worlds, and give an outlook of the next year.
David Bosschaert, Software Engineer, Adobe
Carsten Ziegeler, Lead Architect, Adobe
Let's say you need to provide an internet service to your users. Chances are that your service should be available via REST. Let's say your service should both provide data to users as well as accept data posted by users, and possibly some logic. Now let's assume your service turns out to become incredibly popular, with lots and lots of users. Sounds like you need Apache Sling and Felix in the cloud.
Radu Cotescu, Adobe
In this session we'll explore how a developer can write a modern web application on top of Apache Sling, using the Sightly HTML templating language. Given that the reference Sightly implementation is now available in Sling, we'll focus on best practices, modularity and on reducing application complexity by taking advantage of reusable components.
Andrei Dulvac, Adobe
HApi allows sling component developers to create a hypermedia API over the same HTML components that are designed for the browser (use the same HTML markup as the media type for the API instead of defining a new endpoint/ format). Hypermedia controls are already defined in HTML as anchors, links and forms while HApi allows to use microdata to add semantic structure to the markup from application-defined semantic types defined in the sling repository. The API can then be used to enable automated testing, crawlers, external importers/ exporters, server-to server communication, etc.
Right now, sightly and jsp are supported, but any scripting language should be easy to use as would be replacing the microdata semantic annotations with something like RDFa.
Robert Munteanu, Adobe
Developing a Sling application is only half the story - or perhapseven less. Automated testing is of great importance for insuring code quality and reducing regression risk. Sling presents an interesting challenge, as its technology stack does not get as much attention as more mainstream ones. As such, we had the pleasure of developing our own patterns and testing tools, while integrating the foundations that already existed. This presentation will walk through the various available tools and show how they can be used to cover a Sling-based application.
Mateusz Chrominski, Cognifide
Have you ever been designing user permissions? AEM sites are used by non-technical authors and experienced platform administrators at the same time. The WCM interface is provided to people under legal liability as well as marketeers. It's usually easy to say who should be able to do what. Going into production is when access control gets painful however.
The talk covers the permissions handling on JCR, Sling and AEM level. I will use typical client requirements and describe how to solve them -- both with AEM API and open source tools. You will learn how to effectively apply a permission schemes on a live instance.
Philip Hornig, Pixelpark
Michael Sunaric, Netcentric
In this presentation we will showcase a development model which seamlessly integrates modern front-end development and AEM/Sling development. Responsive website development requires designers to work with front-end prototypes and collaborate closely with front-end developers. As a result front-end development has adopted a complex tool chain. The challenge is making this tool chain compatible with AEM/Sling development without the need to rewrite front-end templates for AEM/Sling use. We propose a front-end tool chain that uses Node.js, Grunt, Sass and Handlebars and implemented a template engine for Handlebars in AEM/Sling using Sling Models. This allows for a continuous build chain from front-end to back-end.
Bruce Lefebvre, Adobe
Single-page apps (SPA) have reached critical mass, widely regarded as the most effective pattern for building seamless experiences with web technology. This session will dive into bringing this paradigm to an AEM instance near you - including tips and tricks for leveraging AngularJS to optimize your SPA development, and examples of bringing your content to the app store with Adobe’s PhoneGap.
Carsten Ziegeler, Adobe
David Bosschaert, Adobe
The OSGi platform powering AEM provides a dynamic module system and enables component oriented development. Besides serving as the foundation for AEM, there are benefits for application developers.This talk outlines the ease of use of OSGi in application code and shows how to master development tasks by using the right APIs and tools. Learn about the latest in component development, asynchronous processing, configuration management and deploying your application code in larger modules, so-called subsystems. A subsystem allows to package a set of bundles and configurations. The subsystem can run isolated from other bundles or other applications. Learn how to leverage the latest OSGi tech for your own projects. All of the functionality discussed works directly with in AEM 6.1, GA now. Make the most of the power of OSGi.
Davide Giannella, Adobe
A lot of changes in Jackrabbit 3, aka Oak, with regards to indexing and querying. How can we leverage the new index models and tune our queries to get the best out of the platform (Oak, Sling, and AEM).
Adam Pazik, Adobe
Mike Tilburg, Adobe
This session provides insight into Adobe Managed Services management and configuration of complex customer Adobe Experience Manager (AEM) environments on the Amazon Web Services (AWS) cloud platform. After a brief introduction on the Adobe Managed Services model, we will show you how we manage and monitor AEM environments for our enterprise customers in the cloud including tips on ensuring successful cloud deployments. We will show you geographically distributed, complex AEM deployments running in AWS and explain key configuration changes we’ve made in order to optimise operations for a cloud hosted solution. Finally, we will also discuss highly available scenarios involving MongoMK and TarMK.
Stefan Seifert, pro!vision GmbH
The wcm.io Open Source frameworks allows to build enterprise-scale CMS applications with AEM 6.0 and 6.1. It can manage configurations, paragraph systems, link- and media references in multi-tenant scenarios. The main focus is to build responsive web sites with AEM Touch UI based on Sling Models and Sightly. Maven Plugins and AEM Testing Mocks help straighten the development process.
Stefan Seifert, pro!vision GmbH
A new generic NoSQL resource provider helps implementing your own resource provider for documented-oriented NoSQL databases. Sling provides implementations for MongoDB and Couchbase.
Michael Dürig, Adobe
Apache Jackrabbit Oak offers better horizontal scalability and concurrency than its predecessor, Apache Jackrabbit 2. The downside of which is increased chances of conflicts between concurrent updates. In this session I demonstrate how to deal with such conflicts by taking advantage of Oak's underlying consistency model. I will show how to build functionality like counting, voting, rating, negotiating, bidding, etc. common to collaborative applications. Such functionality traditionally requires some form of global consensus (e.g. locking, atomic commit protocols, ...). I will show how with Oak it is often possible to avoid conflicts all together by choosing the right content model. For cases where this is not possible I will discuss the mechanisms that Oak provides to deal with conflicts while they occur and after the fact.
Dominik Suess, Adobe
Regardless if product or project - applications have a lifetime beyond their initial deployment.
These update deployments create very specific challanges and constraints for disciplines like change management, development, testing and deployment execution.
Thomas Wolfart, pro!vision GmbH
Configuring an AEM infrastructure environment with authors, publishers, webservers and multiple tenants is a complex task which required a lot of know-how on the side of the operations team. This talk introduces CONGA – a CONfiguration GenerAtor with special support for Sling and AEM which gives the right balance of control to both sides of the Dev and Ops teams. Bases on a sample scenario of a typical AEM multi-tenant setup the main concepts are shown, and why it is not a replacement but an addition to tools like Puppet and Chef.
Noberto Leite, MongoDB
MongoDB is one of the possible MicroKernels / Storage Layer options that can use with Adobe Experience Manager. But how does it work? Why should we use it? How to operate this system? How to size and scale this scalable, flexible storage engine.
Olaf Otto, Unic AG
What if you could adapt resources to Spring Beans? What if you had powerful content-to-object mapping with just one annotation? What if you could leverage the resource type hierarchy for POJO modelling? What if you could use Spring MVC instead of those ancient servlets? And all of that transparently integrated into Sling? All of this – and much more – is provided by NEBA (http://neba.io). In this talk, I’ll give an introduction to the framework driving many large & well-known Sling-based applications.
- Sling Sitebuilder and Sling CMS (Sandro Boehme)
- Oak Upgrade (Julian Sedding)
- New Sling APIs (Carsten Ziegeler)
- Composum Console (Ralf Wunsch)
- wcm.io Caravan - OSGi microservices (Stefan Seifert)
- AEM as integration platform (Jakub Kaniewski)
- HApi HTML client (Andrei Dulvac)
- Metrics Injection, SLING-4849 (Dominik Süß)