Most people that are familiar with WebSphere Application Server are aware that V8.5 introduced a new lightweight application server profile called the Liberty profile. While suited for both development and production, the profile is particularly attractive to those who want an efficient environment for the development and hosting of simple web applications. The Liberty profile is modeled after the Java™ EE 6 Web profile specification and in V8.5, Liberty supported a subset of the programming models defined by that specification. In V8.5.5, this support has been extended and additional enhancements have been added to make Liberty more robust. Liberty is built on the same code base as the traditional application server (the full profile), ensuring that applications that run on Liberty will also run on the full profile. WebSphere Application Server Developer Tools for Eclipse (available without charge from wasdev.net) and IBM Rational Application Developer both provide the tools needed to develop and test applications for Liberty.
I recently led a team of authors in updating the WebSphere Application Server V8.5 Redbooks publications for the new V8.5.5 features. This was my first exposure to the Liberty profile and I was really impressed. The "no-nonsense" configuration (a simple XML file), simple installation, small footprint, and quick startup were a pleasant surprise. Deployment and update of applications is simple and dynamic. Simply drop the application into a monitored directory and it will deploy and start. I can see why so many developers have turned to this profile for testing their applications.
The additional features included with WebSphere Application Server V8.5.5 are sure to make this profile appeal to an even larger audience, including administrators. The following 8 points describe some of these new features for developers and administrators.
1. Completion of the Java EE 6 Web Profile support, including the addition of the following programming model support:
Enterprise JavaBeans (EJB) 3.1 Lite and Interceptors 1.1 (a subset of the full EJB 3.1 specification, focused on session beans and local interfaces)
Managed beans 1.0
Contexts and Dependency Injection (JSR-299 1.0 and JSR-330 1.0)
2. Support for Java messaging service (JMS) and message-driven beans, including a new lightweight single server message provider, support for the WebSphere MQ client, and interoperability with the service integration bus in the full profile.
3. Client and server functionality for SOAP based Web services, inlcuding support for the SOAP/HTTP and WS-Security protocols.
4. Support for MongoDB that provides access to a scalable, document-oriented NoSQL database. Applications can get a reference to the database using injection, JNDI lookup, or J2SE style. Once the reference is obtained, access to the database is through the MongoDB Java API.
5. The new Liberty Extensions System Programming Interface (SPI) that provides the ability to extend the Liberty profile with custom features.
6. Support for WebSphere Web Cache (sometimes referred to as DynaCache), providing a local caching service for dynamic web content. For scalability or to cache other data, Liberty can interoperate with WebSphere eXtreme Scale or the WebSphere DataPower XC10 V2 Appliance.
7. Liberty servers can now be seen as a part of a common management domain, called a Liberty collective. A collective controller provides full life cycle management to all members in the collective, including product installation and maintenance, and operational access to all servers in the collective. Liberty servers, that are members of a collective, can be configured into a server cluster for high availability and scalability. The cluster can be treated as a single object in the collective, simplifying the operational management of the servers in the cluster. The members of the cluster can be configured individually, or can share a configuration. A web server plugin is used to distribute work across the servers in the cluster.
8. Additional serviceability and security enhancements.
The Liberty profile is shipped with every WebSphere Application Server packaging option and also separately in a Liberty Core offering. The Liberty features will vary depending on the packaging option so be sure to research the options to see which package best fits your needs.
I hope this gives you some insight into the Liberty profile and how it is maturing to suit a variety of needs. For more information, see the following IBM Redbooks publications: