Installing the WAS Feature Pack for Web 2.0

The WebSphere® Application Server Feature Pack for Web 2.0 provides a supported open Asynchronous JavaScript™ and XML (AJAX) development framework that leverages existing SOA and Java™ EE assets to deliver rich internet applications.

To install the WAS Feature Pack for Web 2.0:

  1. Open the IBM® Installation Manager.

  2. Click

    Install. The Install Packages page opens.

  3. In the package list, select

    IBM WAS Version 6.1 Test Environment, then click Next.

  4. Follow the instructions in the Installation Manager to install WAS Version 6.0, 6.1, or 7.0. In the Features section of the Installation Manager, ensure that you select the WAS Feature Packs.

 

About the IBM WAS Feature Pack for Web 2.0

The IBM WAS Feature Pack for Web 2.0 provides technology that can be used to create AJAX-style architectures. The feature pack is available with WebSphere application server 7.0, 6.1, 6.0.2 and WebSphere Community Edition 2.0. The feature pack provides developers and architects, the resources to create AJAX Web applications and architectures. The feature pack includes both client-side runtime and server-side functionality.

Client runtime

The Client-Runtime included with the feature pack consists of the technologies that are running on the browser-client. They include the open source Dojo Toolkit and a set of IBM extensions to the Dojo Toolkit to support additional functionality.

The Dojo Toolkit is a powerful open-source JavaScript library that can be used to create rich and varied user interfaces running within a browser. The library requires no browser-side runtime plugin and runs natively on all major browsers. This is boon for JavaScript developers since it helps abstract away the eccentricity of different browser implementations.

The open-source Dojo Toolkit provided with the IBM’s feature pack is divided into five sections:

Base

The Base is the kernel of the Dojo Toolkit and consists of dojo.js. The file is designed to be compact and optimized so as not take long to download to the browser. It contains the bootstrapping, useful utilities, event notification, to name just a few items.

Core

The Core, contains wide variety of graphical user interface widgets and the IO Transport for XHR requests to the server.

Dijit

Dijit builds on the Base and Core by providing a rich set of additional widget controls. The controls are internationalized and accessibility enabled.

Dojox

Dojox contains experimental aspects of the Dojo Toolkit and represents innovative material that may some day move into the base or Dijit modules. Dojox is an incubator of sorts and a preview of new features. Some of the modules located in Dojox include charting, offline storage, and grid to name a few.

Util

The Util contains a testing harness for Dojo and can be used to test the widgets that are provided with the Dojo Toolkit.

IBM Extension to the Dojo Toolkit

In addition to the open-source Dojo Toolkit for creating rich client side applications, IBM also provides a set of JavaScript extensions that developers will find useful:

  • Atom Feed widget - A client-side widget that can be used to render and use Atom syndication feeds.

  • IBM Gauge widgets - A client-side widget that can be used to display numerical data om a graphically rich way.

  • IBM SOAP - This extension can be used to connect a client-side browser widget to an existing SOAP-based service.

  • IBM Open Search library - This extension enables you to invoke any Open Search-compliant service and to bind search results to widgets within your AJAX application.

Server-side libraries and connectivity

The feature pack also includes a rich set of libraries and connectivity features provided on the server to assist in client development. The features include:

Ajax proxy

The feature pack provides a Servlet based forward proxy that can be used in the aggregation of content from different sites. To provide control, the proxy contains a white-listing configuration file that can be used to define the sites the proxy can access. Additionally, the proxy can filter on HTTP headers, cookies and mime-types to provide a level of control over the sites that a browser-based client can access.

Web-remoting for Java Components

A challenge in combining Ajax style architectures and J2EE is mapping client-side runtime to J2EE constructs. The feature pack provides a Remote Procedure Call Adapter (RPCAdapter) that is provided as a JAR library which can be embedded into a server-side Web application. The RPCAdapter can be used to accept HTTP requests such as POST and GET and map the requests directly to user created classes. One of the powerful aspects of RPCAdapter is the ability to serialize EJB session and Collection data to a JSON or XML stream returned to the browser client. The JSON and XML data can contain the information to be displayed by the widget.

Apache Abdera libraries

Apache Abdera is an open-source project providing feed syndication support. Abdera addresses both the Atom syndication format and the Atom publishing protocol. The Abdera libraries can used on the server to read syndication feeds from other sources or to generate your own feed content for use by your widgets.

JSON4J

The JSON4J library is an implementation of a set of JSON handling classes for use within Java environments. The library can be used to derive your own JSON data streams. The JSON4J library provides the following functions:

  • A simple Java model for constructing and manipulating data to be rendered as JSON.

  • A fast transform for XML-to-JSON conversion. JSON4J can be used to convert an XML reply from a Web service into a JSON structure for easy use in an Ajax application.

  • A JSON string and stream parser that can generate the corresponding JSONObject, which represents that JSON structure in Java.

Web messaging service

The Web messaging service uses a publish and subscribe pattern to connect the browser to the WAS Service Integration Bus for server-side event push to the browser. Client-server communication is achieved through the Bayeux protocol. You can consider the Web messaging service implementation as a comet server implementation. The Dojo Toolkit provides client-side support.

Currently, the Dojo Toolkit is the only JavaScript library to support the Bayeux protocol, although any JavaScript library that implements Bayeux protocol support can communicate with Web messaging service. The Web messaging service server bridges browser clients to the Service Integration Bus, allowing a Web service or any other item connected to the bus to publish events to Web-based clients. You can use the Web messaging service in a new or existing application by placing a utility file library JAR in an application Web module, setting up a simple configuration file, and configuring Servlet mappings. The Web messaging service is included in the Quote Streamer for WAS product samples.