Because the adoption of Ajax helps the Web to reach a new level of interaction and responsiveness, the importance of enterprise-level development tools will continue to grow. ATF, Dojo, and Zimbra are key components of this development. As Web applications require better, faster, and smoother Web applications, Toolkit developers and browser manufacturers have the responsibility to maintain a collaborative environment to encourage the development of UI and cross-platform compatibility. Open Ajax Initiative is the framework built for this purpose.
Eclipse ATF
Eclipse Foundation has become an open source code development and powerful application framework. Eclipse is based on Java™Open source platform, which can be fully expanded and deployed on each major platform. A wide range of plug-ins and tools are available.
As part of Open Ajax Initiative, Eclipse Foundation is building ATF, which provides a scalable framework for runtime environments (such as Dojo and Zimbra. As part of Open Ajax Initiative, ATF plays the role of central component unified tool. Earlier versions of ATF can be obtained from IBM alphaWorks.
Based on the Eclipse Web Tools Project, ATF provides Tools for building an independent development environment (IDE), including runtime syntax check and other features, and is embedded with the JavaScript debugger, Document Object Model (DOM) browser and Mozilla Web browser. ATF provides a full enterprise-style development environment for open source development tools with loose features. Many developers are comfortable working in this environment. This tutorial focuses on Dojo and Zimbra, because they are currently two of the most powerful and mature Ajax tools available. Figure 1 shows the initiative components and how to assemble ATF.
Figure 1. Open Ajax Initiative component
Dojo
If you plan to use tools in Open Ajax Initiative, you should be familiar with the toolkit that ATF will support, such as Dojo and Zimbra.
Dojo is a community project designed to unify JavaScript and Dynamic Hypertext Markup Language (DHTML) efforts into a single direction by building a standard JavaScript library. The community realized that no one would work too far without it, so the three independent predecessors toolkit was integrated into the Dojo Foundation, which owns and maintains the code. Dojo has multiple optional software packages, including the Ajax version, I/O version, and "Kitchen Sink" version (this version includes the entire tool set ).
To get started with Dojo, you only need to download one of the following five versions:
- Ajax-use the Ajax version to create an application with synchronous I/O (XmlHttp), integrate complex visual effects, and use an aspect-oriented event system.
- I/O (XmlHttp)-I/O version is built with dojo. io. bind, so the XmlHttp layer can be used for asynchronous I/O.
- Event + I/O-This version includes the Dojo Aspect-Oriented Event System and the XmlHttp layer.
- Widgets-This version includes HTML and Cascading Style Sheet (CSS) templates loosely coupled with Widgets, providing clearly separated styles, content, and logic.
- Kitchen Sink-This version includes all the Dojo libraries.
Install Dojo
Select the appropriate Dojo version, download it, and decompress the software package. Move the following files to the Web root directory (add the helloworld.html file for example ):
- Dojo. js
- Iframe_history.html
- Src (directory)
- Helloworld.html
Add a single row to the. html file using the path pointing to the Dojo file:
You can now freely download the Dojo library and widgets in JavaScript.
Simple Dojo example
Now, let's try a simple example. It outputs "Hello World!" every time you press the button during the debugging process !". In this example, edit helloworld.html. Set the path of dojo. js in the initial part of the code shown in Listing 1 and enable the debug mode to test your output.
Listing 1. Output "Hello World !" Simple Example
Use the Button2 widget with "Event" to call the helloPressed function:
Listing 2. Using the Button2 widget with an "Event" to call the helloPressed Function
Figure 2 "Hello World!" after clicking Press Me !" The output of the Dojo application.
Figure 2. "Hello World !" Dojo application output
By providing a powerful and ever-increasing collection of widgets, Dojo makes it easier to integrate small pieces of Ajax code into existing Web pages, using those widgets, you can easily add the UI effects that are expected in the desktop environment. Developers avoid writing every part of the UI manually. For advanced users, it provides capabilities not provided by most tools. For example, it includes packaging and building a system to quickly optimize the project to be deployed. Dojo is a satisfactory solution for Ajax developers of all levels.
ATF integrates Dojo into Eclipse. Its Introduction enhances these capabilities to the enterprise level by providing a graphical coding environment and access to additional Eclipse plug-ins.
Zimbra Ajax Toolkit
Zimbra is committed to Open Ajax Initiative by providing Open access to Zimbra Ajax Toolkit (AjaxTK. Zimbra has used AjaxTK to challenge the limits of our so-called Web pages and developed a complete Online Collaboration Suite, including enterprise-level email, calendar, and contacts. AjaxTK reduces the gap between Web-based applications and standard desktop-based applications by zero. Figure 3 shows the mail application included in Zimbra's Collaboration Suite, which was developed using AjaxTK.
Figure 3. Zimbra Mail Application
Figure 4 shows the Zimbra calendar application, which was also developed using AjaxTK.
Figure 4. Zimbra calendar application
The internal Ajax tools used when developing this impressive Collaboration Suite can also be publicly used. The open and non-patented environment for Ajax development provides the impetus to publish this powerful tool to the public.
AjaxTK is built on the following source software packages:
- Config-configuration information and message localization files
- Core-Basic exception classes and Environment Information
- Debug-debugging class for application debugging during runtime
- Dwt-DHTML Widget Toolkit:
Config-CSS rules, images, and localized text
Core-Exception Handling and low-level DOM Utility Functions
Dnd-Drag and Drop support
Events-events used by the Toolkit and built on the support of General AjaxTK events
Graphics-vertex, rectangle, and CSS utilities
Widgets-DWT widget set and support Class
Xforms-provides the XForms implementation for creating complex forms
- Event-basic event and event listener classes, and event manager classes responsible for event registration and allocation
- Net-Network Communication
- Soap-SOAP Document Processing
- Util-a utility for string operations, cookie management, data operations, latency action support, callback support, and other tasks
- Xml-XML Document Processing
Enterprise developers can be comforted by the knowledge that Zimbra Ajax Toolkit is generally used to build large-scale, robust applications deployed in the real world. The Collaboration Suite of Zimbra contains more than 130,000 lines of JavaScript. AjaxTK is intended for developers who plan to build a complete alternative for desktop applications. If you want to use Ajax to enhance existing Web pages, Dojo may be more suitable. The selection depends on what you want to do.
After AjaxTK is inserted into Eclipse, components required to develop rich UIS (such as trees, buttons, and lists) are easier and faster. Integration with Eclipse adds enhanced capabilities to tables, including powerful debugging tools and drag-and-drop synthesis. Zimbra intends to continue to drive Ajax by collaborating with members of Open Ajax Initiativ and supporting Open and non-patented technologies.
Initiative is moving forward
Partners behind Open Asynchronous JavaScript and XML (Ajax) Initiative are building an Open platform for developers to collaborate to enhance the community. Initiative places a wide range of tools in the hands of people who are building Responsive user interfaces (UIS) into new environments and existing environments.
Founding member of Initiative, these include BEA Systems, Borland Software, The Dojo Foundation, The Eclipse Foundation, Google, IBM, Laszlo Systems, Mozilla, Novell, Openwave Systems, Oracle, Red Hat, Yahoo! Zend Technologies and Zimbra are aware of the enormous importance of introducing new tools to the growing Ajax Developer community.
The unified interface and advanced debugging capabilities in Eclipse bring the enterprise-level coding environment to the community. Eclipse's ATF will provide easy access to the toolkit from Dojo and Zimbra. The Initiative members believe that the main backing of Open Ajax may be that it drives the explosive point in which the Web still has vitality. Open Ajax Initiative is making active efforts for Web health.
(