Kevin Sutter is Senior Technical Staff Member at IBM, Java EE Architect and JPA Architect for WebSphere and JPA Expert Group member. I had the opportunity to ask him some questions about the WebSphere Liberty Profile (WLP).
What is WebSphere Liberty Profile (WLP)?
WebSphere Liberty Profile is the "next generation" application server from WebSphere. It is a re-architected production-ready application server built on a new kernel that enables the server to be lightweight, composable, simple, flexible, dynamic, and extensible. But, at the same time, we also needed to provide full application fidelity with the full profile WebSphere. So, if you develop a Java EE application with WLP, you can be assured that this same application will execute unaltered on full profile WebSphere. This has been a key requirement of our customers as we continue to develop and evolve the WebSphere Liberty Profile.
What is the difference between WLP and the "full" WebSphere (WAS)?
From a Java EE perspective, there is very little difference between WLP and full profile WebSphere. Currently, WLP is Java EE 6 Web Profile compliant, while full profile WebSphere is Java EE 6 Full Platform compliant. As I mentioned above, applications developed for WLP will have full fidelity with running on full profile WebSphere. That fidelity statement does not always work in reverse though... If you have applications on full profile WebSphere that take advantage of Remote EJBs, for example, these will not work on WLP since Remote EJBs are beyond the Web Profile specification. Another major feature of WLP is our goal of Zero Migration. Due to our composable and versioned feature architecture, we are striving to provide zero migration for our customers moving from one release of WLP to the next. If the customer is only interested in moving up to the runtime improvements provided by the next release, but is not ready to start experimenting with the new features, their applications should continue to execute without any migration assistance. This feature has been very popular with our customers.
Is it possible to migrate apps between WLP and WAS back and forth?
Yes, it is possible to migrate apps between WLP and WAS, especially with moving applications from WLP to full profile WebSphere. As I have mentioned, this fidelity statement is guaranteed as long as you stick with the defined programming models. Migrating applications from full profile WebSphere to WLP is also possible, again if you have limited your full profile WebSphere applications to the Java EE Web Profile standard. WLP also supports some of the Java EE full platform standards, such as JCA 1.6, JAX-WS 2.2, and JMS 1.1. Beyond Java EE, WLP also supports NoSQL databases such as MongoDB, and several other features. WebSphere provides the Migration Toolkit (https://developer.ibm.com/wasdev/downloads/#asset/tools-Migration_Toolkit_for_WebSphere_Version_Migration_V8.5.5) which can help identify aspects of your applications which will work on each profile. There is also a variation of this Migration Toolkit which will also help with migrating to WLP from competing solutions (https://developer.ibm.com/wasdev/downloads/#asset/tools-Migration_Toolkit_for_Competitive_Migration_V8.5.5).
Is it possible to get commercial support for WLP? How complicated is it?
The development environment (runtime and tools) for WLP is free and easily downloaded from WASDev (https://developer.ibm.com/wasdev/downloads/). WLP is fully supported for production use when used with a commercial WebSphere Application Server license (http://www-03.ibm.com/software/products/en/appserv-was).
Are the WAS/WLP licensing models different?
No, WebSphere Application Server Full Profile and WebSphere Application Server Liberty Profile share the same licensing model. But, we do also offer an entry level version called Liberty Core. Liberty Core provides Java EE Web Profile without any of the extensions and additions mentioned earlier.
Is there any binary difference between an unsupported and commercial WLP?
No, there are no binary differences between the free development download WLP and the supported, commercial WLP. Exact same binaries, just a different licensing model.
Is WLP opensource?
No, WLP is not open-source. But, we are employing open-source "best practices" for our developer community. We have a vibrant WLP community for asking questions and seeking assistance (https://developer.ibm.com/wasdev/help/). We also have provided the WebSphere Liberty Repository (https://developer.ibm.com/wasdev/downloads/) which not only provides access to the Liberty downloads, but also contains additional feature extensions, samples, and open-source integration write-ups on how to use Liberty.
Why commercial support for WLP is important?
A good friend of ours once said, "Open-source is not free!". Although the open-source model is attractive to get started with, eventually users of the open-source alternatives need some type of support. Whether this support is for bug fixes, or new features, or even consulting work. So, having IBM ready and willing to provide full support for WLP is a welcome, comforting feature.
When Java EE 7 and Java 8 are going to be supported?
As I mentioned at JavaOne, we are delivering Java EE 7 content as it becomes "ready" through the WebSphere Liberty repository in a more continuous-delivery fashion than with full-profile WAS. For example, we recently announced that our 4Q2014 deliverable (WebSphere Liberty Profile v184.108.40.206) contains Web Sockets 1.0, Servlet 3.1, Concurrency Utilities 1.0, and JSON-P 1.0. We are planning similar updates in our future quarterly deliverables. Related to this is our Monthly Beta program. We are delivering WebSphere Liberty Profile Monthly Betas which contain many of our early Java EE 7 technology features. The most recent Monthly Beta (https://developer.ibm.com/wasdev/downloads/liberty-profile-beta/) contains early versions of most of the Java EE 7 Web Profile and some of the Java EE 7 full platform implementations. This is a great way for our customers to "kick the tires" of the new technologies and provide feedback before they are delivered as part of a quarterly deliverable.
How to get WLP? How to start with WLP?
Various answers above have identified the various web sites available for WLP. But, here's the concise collection of URLs: Liberty v220.127.116.11 via Eclipse: https://developer.ibm.com/wasdev/downloads/liberty-profile-using-eclipse/ Liberty v18.104.22.168 Runtime: https://developer.ibm.com/wasdev/downloads/liberty-profile-using-non-eclipse-environments/ Liberty Monthly Betas: https://developer.ibm.com/wasdev/downloads/liberty-profile-beta/
I always made fun of WAS -- with the introduction of WLP I stopped with that... Thanks for the interview!
On demand workshops: Java EE 7: Bootstrap, Effective, Testing and Microservices available for streaming.