The OpenAjax Alliance has made good on promises it made earlier about boosting enterprise-class Web development with new Web 2.0 specifications and widget standards.
I first reported on the organization’s moves in September, when Jon Ferraiolo, a Web architect in IBM’s emerging technologies group, shed light on the subject at a rich Web conference in Vienna, Va. Ferraiolo discussed early work on the efforts now coming to fruition in terms of metadata integration, mashup security and a widget interoperability standard. At the event in early September in Virginia, Ferraiolo spoke on Interoperable Asynchronous JavaScript and XML (AJAX) tools and mashups.
However, “we’re completing an interoperability event where members have implemented the tooling standard and the mashup standard,” Ferraiolo said. For instance, Adobe’s DreamWeaver team announced support for the new OpenAjax Widget Format in the new DreamWeaver CS4, and the Eclipse Foundation has implemented the OpenAjax JavaScript API, Ferraiolo said.
The question is, however, has AJAX gone the way of XML — being a vital technology but no longer in need of a spotlight or showcase event to show it off because it is so integral to systems. Indeed, XML is just there. It’s in the plumbing — everybody has it and most everybody knows it.
However, if a conference must be held on the subject, AJAXWorld in San Jose, Calif., is as good as any, coming on the heels of The Ajax Experience conference in Boston. Meanwhile, at the AJAXWorld show, the OpenAjax Alliance announced the successful interoperability of two key technologies with more than a dozen AJAX products. These advances will further enable software developers to create enterprise-class Web sites with Web 2.0 features using its open standards software.
AJAX, based on open formats such as HTML and JavaScript, is the Web development technology behind most interactive, rich Web 2.0 applications-such as mashups, widgets and gadgets. With today’s milestone, the Alliance is showing that the technologies announced in the spring can successfully interoperate with industry-leading AJAX products.
The OpenAjax standards address two workflows, AJAX Integrated Development Environments (IDEs) and AJAX mashups. These OpenAjax standards initiatives will enable better AJAX developer tools and will promote greater security and interoperability with mashups, Ferraiolo said. This is critical as Web 2.0 applications extend from the consumer space into the enterprise.
For instance, Adobe, Aptana, the Dojo Foundation, the Eclipse Foundation, Google, IBM, ILOG, Lightstreamer, Nexaweb, Programmable Web, SAP and TIBCO are among the vendors that received interoperability awards today for OpenAjax standards for IDEs and mashups, a Web site or application that combines content from more than one source into a browser-based Web application.
“The Eclipse Foundation has expanded its industry-leading open source IDE technologies to go beyond Java to also support JavaScript and AJAX developers,” said Mike Milinkovich, executive director of the Eclipse Foundation. “We strongly support the IDE interoperability efforts at OpenAjax Alliance and are excited about our future support for OpenAjax Metadata within Eclipse’s JSDT [JavaScript Development Toolkit] component. Our various JavaScript initiatives will allow Web developers to experience the same power and flexibility advantages that Java developers have realized for years from the open-source Eclipse platform.”
“We took Aptana’s format as a starting point then we worked with a group including Microsoft and Eclipse to help shape that into an OpenAjax Alliance standard,” Ferraiolo said.
Indeed, he said, “we’re happy about the broad participation on the mashup side, especially for the enterprise side, and that the promise of Eclipse 2.0 can happen.”
Helpful to Designers
Meanwhile, said Scott Fegette, product manager in Adobe’s Creative Solutions Business Unit, said Adobe has done a lot of work with the OpenAjax Alliance, particularly the IDE working group. “And we learned that widgets were design patterns that designers were using and not just developers.”
So, Fegette said, “We helped the group evolve the OpenAjax format. We built a rich extensibility model based on JavaScript, as we were already familiar with JavaScript.” Fegette added that one of the most exciting things about working with the OpenAjax Alliance “was getting broad input from the industry — from folks like Aptana and Microsoft’s Visual Studio team and others who are passionate about the work. It’s been fantastic to work with a group that’s equally passionate about this as we are.”
“With the recently launched Adobe DreamWeaver CS4, Adobe’s goal was to take the mystery out of AJAX development, and give our customers a rapid and intuitive way to incorporate Web Widgets into their projects,” Fegette said. “That’s why we used OpenAjax Metadata as DreamWeaver’s native format for defining AJAX widgets – so our customers could easily take advantage of widgets from a variety of third-party developers to enhance their designs.”
The OpenAjax Alliance is an organization of vendors, open-source projects and companies using AJAX that are dedicated to the successful adoption of open and interoperable AJAX-based Web technologies. OpenAjax members include more than 100 organizations including Adobe, the Eclipse Foundation, Google, IBM and Microsoft working towards the mutual goal of accelerating customer success with AJAX. The prime objective of the group is to accelerate customer success with AJAX by promoting a customer’s ability to mix and match solutions from AJAX technology providers and to help drive the future of the AJAX ecosystem. To learn more about OpenAjax Alliance, please visit: www.openajax.org
The AJAX industry today has several popular IDEs and hundreds of useful AJAX libraries, but integration of AJAX libraries into AJAX tools has been a largely library-by-library manual process for the tool vendors. As a result, AJAX tools only provide strong code assist and interactive-help features for a highly restricted set of AJAX libraries, and have difficulty maintaining compatibility with new AJAX library releases.
To solve this integration problem, OpenAjax Alliance has developed an industry standard XML format, OpenAjax Metadata, which describes the JavaScript APIs and widgets found in AJAX libraries, Ferraiolo said. This standard will allow arbitrary AJAX tools to work with arbitrary AJAX libraries so that the tools can provide intelligent code assist, interactive help, and drag and drop visual editing using AJAX widgets.
“The OAA Metadata specification is a huge win for AJAX,” said Kevin Hakman, chair of IDE Working Group and director of Evangelism, Aptana. “With the dominant majority of all leading IDEs having contributed to the specification and having pledged to support it, soon anyone creating AJAX libraries or widgets and describing those with the OAA Metadata can be assured to have broad compatibility with a vast array of tools — and developers will be able to further ease and accelerate their projects that include AJAX.”
“Aptana is pleased to have contributed to this milestone specification for the API metadata, much of which was derived from the open-source ScriptDoc format from Aptana,” said Lori Hylan-Cho, AJAX wrangler, Aptana. “This means that Aptana’s ability to interpret the OAA metadata and use it to boost AJAX developers’ productivity in Aptana Studio has been a breeze. We are excited that there’s now a robust non-proprietary way to describe AJAX libraries and widgets in a consistent manner, which benefits tools, library and widget developers, and ultimately all JavaScript developers, who can look forward to improved code hinting and widget management in their IDEs.”
Addressing Security Concerns
Meanwhile, mashups represent a revolution in Web application development, where end users can assemble situational applications within the browser by drag-and-drop assembly of pre-built Web components (widgets and feeds) onto a mashup canvas. However, mashups represent a security challenge due to the risk of potentially malicious third-party components.
The alliance has produced OpenAjax Hub 1.1, which provides an industry-standard secure mashup runtime that isolates third party widgets into security sandboxes and mediates messaging among the widgets with a security manager. OpenAjax Hub 1.1 will be delivered as both an open specification and commercial-grade open-source reference implementation.
“Today’s announcements from the Alliance illustrate how OpenAjax is evolving from the consumer space into the enterprise by being able to run mashups, widgets and gadgets in AJAX applications,” said David Boloker, OpenAjax Alliance Steering Committee chairman and chief technology officer for Emerging Internet Technology, IBM.
The alliance includes within its OpenAjax Metadata standard the ability to define “mashable widgets,” where widgets identify the properties that they share with other widgets and the messages that they can publish and receive from other widgets.
To speed industry adoption of its mashup technologies, the alliance has produced both an industry XML format for “mashable widgets” and an open-source mashup application that demonstrates all of its mashup technologies working together, Ferraiolo said.
The mashable widget format is upwardly compatible with the OpenAjax widget format used to document widgets within an AJAX library, thereby allowing AJAX widget libraries to be “mashup-ready.” The open-source mashup application provides reusable open source for processing the OpenAjax Metadata standard for mashable widgets. The mashup application also demonstrates integration of OpenAjax Hub 1.1 in order to provide a secure mashup runtime. The alliance has also developed an open-source widget repository that supports the OpenSearch standard. OpenAjax Alliance officials said.
“The mashup work at OpenAjax Alliance will help accelerate the time when end-user mashups will become a mainstream part of Web application development,” said Stewart Nickolas, chair of the Gadgets Task Force and distinguished engineer at IBM. “The alliance has addressed both the widget interoperability problem facing the industry with its widget standard that is in OpenAjax Metadata and with the open-source mashup runtime in OpenAjax Hub 1.1.”
“IBM is thrilled to see the OpenAjax Alliance provide specifications to increase interoperability between industry-supplied widgets and tooling metadata. We are incorporating these specifications into Rational Application Developer,” said Karen Hunt, director of Development Tools, IBM Rational Software. “The OpenAjax metadata support in Rational Application Developer will enable support for adding widgets to the palette, allowing the widgets to be in the drag-and-drop WYSIWYG page designer editor. In addition, the latest specification will help ensure that the Dojo Widgets we make available can interoperate with Google Gadgets, Microsoft Gadgets and others.”