Pre-Installed Components
Packages that don't come with WebSphere Community Edition are also easy to add. "If it runs in a J2EE container it should be easy to port it to WebSphere Community Edition," he says.
With an application server like Tomcat, developers often need to add components into the War file (ex. commons, log4j, axis, etc.). But that increases the administrative burden on the developers.
"Many people want Tomcat plus features," Staerker says. "If you build an application in Tomcat you may need to add components. Now developers become integrators. They have to support those components and integrate them." WebSphere Community Edition modularity, included components, and powerful console make it easy to add and manage applications on the application server. This helps to deal with problems that developers may encounter when moving an application from Tomcat to another server. "J2EE containers use a parent class loading structure", Staerker points out. "If you move a Tomcat application to another application server you may have parent ClassLoader issues, or perhaps an incompatible version of a component embedded in the War file." WebSphere Community Edition container structure removes many of the class loader requirements from the application. "If you start with a JEE5 container like WebSphere Community Edition, you simplify and reduce the size of your WAR file. If you move to another application server like WebSphere, you're still using the same component structure." Check out the article on Migrating from Tomcat to WebSphere Community Edition.
Migration
WebSphere Community Edition also offers easy upward compatibility to the other members of the WebSphere family. "We made Community Edition highly compatible with other WebSphere Application Servers," Staerker says.
"Of course we provide migration tools. If you outgrow the requirements for WebSphere Community Edition, you can use the WebSphere Application Advancement Assistant tool to move over. With this conversion tool you can take an archive WAR/EAR file built in Community Edition and migrate it to WebSphere Application Server version 6.1."
Due to the lack of standardization in applications, migration can't be completely automatic. However, the Application Advancement Assistant tool is designed to make the job as simple as possible.
"Migration is fairly straightforward depending on the complexity of the application," Staerker says. Most of the job of migrating can be handled from the WebSphere Application Server console. "This is ongoing by the way. We're continuing to grow the migration tool as we find other things that are needed." Check out the webcast on Migrate WebSphere Community Edition Applications to WebSphere Application Server.
The Console
The console is one of the reasons WebSphere Community Edition is so easy to use. "We recognized that many open source application servers don't have a good console," Staerker says. "It was simply something to look at errors and deploy simple applications.”
"The WebSphere Community Edition console is a tool not just for administrators," Staerker says. "It allows you to make changes on the fly simply, without having to go in and tweak the code or server config files. It gives you logs and features for administration, but developers also need things like security realms and database pools and deployment plans. These types of things—that the developer typically has to sit down and plan and build—are rolled into the console as wizards."
"For example, you can go to the console "Database Pools" menu and there's a wizard that asks you for the name of your database pool resource, lets you choose the type of database, and asks you for the parameters for creating the database pool. It creates the database resource and the “usage” link on the menu displays XML parameters to add the resource to application deployment descriptor files (i.e. web.xml and deployment plan) in your application."
An extensive samples package is available at the download site to demonstrate how to use the features of WebSphere Community Edition. "It includes examples of standard features you may want to implement. It also includes many examples such as Hello, JPA, a health application and even deploying to different database types with the EMPdemo sample," Staerker says. "Developers can use the samples to quickly pick up sources, look at deployment plans and adapt the code to their own projects."
WebSphere Community Edition is an example of an open source product which has been carefully optimized and extended to make it easy for developers to use by combining a powerful feature set with a well-designed user interface. The idea behind software like WebSphere Community Edition is not just to produce an open source application, but to make a world class open source product that is powerful, easy to use, and contains the features developers really need.
More Resources