Deploying application servers is usually not a developer's favorite job. Developers prefer to concentrate on making their applications as good as possible. WebSphere Community Edition helps them do just that.
WebSphere Application Server Community Edition makes the job of producing and deploying customized applications easier. WebSphere Community Edition is IBM's distribution of the popular Apache Geronimo JEE5 Application server with a powerful console and many other added features. "Anything that applies to Geronimo applies to WebSphere Community Edition," says Ron Staerker, IBM Technical Consultant for WebSphere Application Server Community Edition. Apache Geronimo was ranked second in the latest Evans Data Application Server report.
|
The guiding philosophy behind WebSphere Community Edition was to start with Geronimo and add the packages and features developers need to deploy applications and develop custom application servers. "WebSphere Community Edition has a number of advantages in modularity, ease of development and ease of administration over other open source application servers such as Apache Tomcat," says Staerker.
The result is a lightweight application server built using open source components, combined with sophisticated tools to make it easy for developers to build and deploy right-sized application servers for their applications. The first version of WebSphere Community Edition was released over three years ago. The most recent version, 2.1, was released in July 2008. WebSphere Community Edition is freely available from IBM. As an option, IBM provides three tiers of customer support for WebSphere Community Edition for developer assistance and production support. There is also an Eclipse WTP Server Adapter for deploying and testing applications to WebSphere Community Edition
Small, Quick and Easy to Use
"WebSphere Community Edition is easy to install, quick to start up and quick to develop applications on," says Staerker. "WebSphere Community Edition is excellent for turnkey environments."
Because it is small, WebSphere Community Edition is fast. "Developers are very cognizant of the amount of time the server takes to start up, the memory footprint and the requirements to support the server," Staerker says. "The download is approximately 75 megabytes and it expands out to approximately 100 megabytes."
"With WebSphere Community Edition, developers can build a platform that will easily reduce the size of the server, decrease startup time and decrease memory and disk footprint," Staerker says. "And it's all done through the console."
WebSphere Community Edition also has the Apache Derby database already embedded and supported. Derby is especially useful for applications that just need a simple database. "Many applications and web sites just need basic data storage in a database" he points out.
Modularity
WebSphere Community Edition is highly modular, allowing developers to use only those components they actually need. "The basic impetus behind WebSphere Community Edition is to make things as easy as possible for developers to design, develop and deploy applications on a light-weight, highly customized application server.”
For example, if you're deploying a server for the web tier only, you probably don't need Enterprise JavaBeans and the ActiveMQ message broker. WebSphere Community Edition makes it easy to omit unnecessary features, reducing the footprint and cutting load time. "With WebSphere Community Edition you just choose the modules you want for a customized server. If you only want Tomcat and Axis components, or if you don't need EJBs, you can build a server that removes components from the disk footprint as well as the runtime," says Staerker.
Using the console, developers can build new servers mostly with mouse clicks by selecting the modules desired from the "Assemble a Server" wizard on the console "Plugins" menu. You can start to build a new server from the ground up or you can modify an existing server by removing plug-ins. When you are done with your custom server environment, you can add standard security and database pools, define standard ports (i.e. listener port 80 instead of the default 8080) and even add a test Derby database. Then copy the WebSphere Community Edition install directory and give the "canned" server to other developers, pre-configured! Other developers just need to check the value of “set WASCE_JAVA_HOME=” in the <WASCE_HOME>\bin\setenv.bat(sh) file to insure it points to their installed JVM. Check out the webcast on Creating WebSphere Community Edition Custom Assemblies.
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