Apache looks to bring fun back to Java

Sling project offers an open-source Web framework that provides a platform to manage and upgrade content

Apache announced this week the first release of Apache Sling, an open-source Web framework intended to make Java development fun again, according to a bulletin from the organization.

Sling brings content into the Web and provides a platform to manage and upgrade content. It makes use of a Java content repository such as Apache Jackrabbit.

"Sling is intended to bring back the fun to Java developers and make the life of a Web developer easier," an Apache representative said.

"It's really just a framework for building a Web app," said Santi Pierini, senior vice president of marketing at Day Software, which has contributed code for Sling and uses the technology in its Communique' (CQ) content management platform. Sling still is in an incubator stage but could become an official Apache project in a few months, Pierini said.

"We're trying to create a Web framework that makes it easier to build what they call RESTful apps," said Pierini in an interview on Friday morning. With Sling, a content delivery framework and content access capabilities are provided so that developers not have to code these themselves, he said. 

Sling can be used for building various types of Web applications, including wikis, blogs, customer self service, and digital asset management systems, Pierini said.

The framework is based on Java Specification Request 170 for Java Content Repositories. That specification features an API for interacting with these repositories. Additionally, an embedded Apache Felix OSGi framework and console provide a dynamic runtime environment enabling code and content bundles to be loaded, unloaded, and reconfigured at runtime.

Sling, Apache said, makes it easy to implement simple applications while providing an enterprise framework for more complex applications.

A scripting layer using Apache BSF (Bean Scripting Framework) enables Sling to be used with any scripting language. Developers also can use Java and develop applications in RESTful way.

Sling is offered in four "flavors," Apache said. These include:

* A standalone application featuring a JAR (Java Archive) file with everything needed to get started with Sling

* A Web application that can be dropped into a Web container

* A full source package

* Maven artifacts. Maven is Apache's software project management and comprehension tool.

In contributing the Sling code, Day Software hopes to build a community of developers that use the same technologies as Day's commercial offerings, Pierini said.