OpenAjax Alliance Pushes AJAX IDE Interoperability
OpenAjax Alliance Pushes AJAX IDE Interoperability
VIENNA, Va.-The OpenAjax Alliance is working to address interoperability issues among development environments for AJAX as well as to facilitate the creation of secure mashups.
At the Rich Web Experience conference here on Sept. 4, Jon Ferraiolo, an IBM engineer and director of the OpenAjax Alliance, a consortium of vendors and organizations working to promote AJAX interoperability, said the group has published draft specifications for ways to make AJAX IDEs (integrated development environments) more interoperable, to secure the creation of mashups and to make widgets more interoperable for use in mashups.
It should be possible for there to be intelligent code assist for APIs across different AJAX libraries, and visual design should be possible using widgets from AJAX libraries, Ferraiolo said. The OpenAjax Alliance specifications will help get to that point, he said.
Aptana is leading the OpenAjax Alliance's IDE Working Group. Ferraiolo said the group wanted to follow the lead of the leading AJAX IDE in the industry and that is Aptana's.
Standards will improve industry efficiency and unleash innovation, Ferraiolo said. So in that regard, AJAX libraries can produce one format, OAM (OpenAjax Metadata), for their APIs, and these libraries will then be compatible with many IDEs, he said. If the library uses JSDoc, then autogeneration of OpenAjax Metadata is possible. "We are investigating autogeneration for other inline documentation formats, such as what Dojo uses," Ferraiolo said. "AJAX IDEs can consume one format, OAM. That IDE will now support dozens of AJAX libraries. By unifying the industry around a single XML file, [this makes it so that] IDEs can now innovate and compete in other areas."
The OpenAjax Alliance IDE Working Group has a number of participants, but the core group that shows up on the weekly calls includes folks from Aptana, folks from Adobe's Dreamweaver group and folks from Microsoft's Visual Studio team, Ferraiolo said.
And while Microsoft has taken a rap for not participating or playing well in some standardization and open-source efforts, Ferraiolo said the company is working to make Visual Studio support the OAM format. Other organizations with participants in the working group include the Eclipse Foundation, Sun Microsystems, TIBCO and OpenLink Software.
"Microsoft has been a strong, active participant, as has Adobe, IBM, Eclipse, Sun, OpenLink and others," said Kevin Hakman, chairman of the IDE Working Group and director of evangelism at Aptana. "All have influenced the specification offering insights from their respective IDEs, user communities and code annotation conventions. Not to diminish others who have contributed significantly, but Bertrand Le Roy of Microsoft has been a consistent core contributor to this process whose input has been very insightful and formative."
Where Is OpenAjax?
There is a draft of the OpenAjax Metadata specification that is now in the implementation phase, Ferraiolo said.
"Our open-source mashup tool supports the widget format, but not APIs at this point," Ferraiolo said. "Version 0.1 of JSDoc to OpenAjax Metadata is available. We have not yet started on work for other inline documentation formats, [such as] Dojo. And we have not yet started on Aptana to/from OpenAjax transcoders."
Meet OpenAjax Hub
Widgets used to create mashups tend not to be interoperable and also to be potential security risks, in that third-party widgets could be malicious, Ferraiolo said. Widget developers usually have to build different versions of their widgets to work with different containers. And on the security front, there is no comprehensive, standards-based approach to widget isolation.
So the OpenAjax Alliance is working to relieve this situation with its OpenAjax Hub technology and OpenAjax Metadata for Widgets specification. The OpenAjax Hub 1.1 provides a framework for loading and isolating widgets and secure message management, Ferraiolo said. Then OpenAjax Metadata for Widgets defines an industry-standard widget wrapper format. Then open-source transcoders convert popular existing proprietary gadget formats into OpenAjax Metadata, and the OpenAjax Alliance open-source mini-mashup application shows how to use all of these technologies.
OpenAjax Metadata for Widgets addresses the two core shortcomings of widgets for mashup use. In terms of widget interoperability, OpenAjax Metadata for Widgets defines industry-standard XML for mashup widgets and is "very close to Google Gadgets," Ferraiolo said. OpenAjax Metadata for Widgets is designed to work with OpenAjax Hub 1.1, which provides a secure mashup run-time.
"Google Gadgets is the gorilla of the Web widget space, and we want to match Google Gadgets wherever possible," Ferraiolo said.
Testing OpenAjax Metadata; Mobile Ajax?
The OpenAjax Metadata for Widgets specification is at the first draft stage and should be completed and approved by the end of 2008, Ferraiolo said.
Much of the progress for the OpenAjax specifications will rely on the outcome of the OpenAjax InteropFest, where the organization will test OpenAjax Metadata interoperability across multiple vendors, and also test OpenAjax Hub 1.1 for reliability, performance and suitability.
"As we head into the fall, the goal is that each of the tool vendors in the IDE working group will demonstrate via the OAA InteropFest how they can consume these description files for a variety of widgets from various sources like Google, Yahoo, Dojo, jQuery, EXT JS, Prototype, Scriptaculous, Mootools ... and have the things described be easy to use in the context of the tool," Hakman said. "With this group of tool vendors behind the specification, we'd hope that developers creating libraries and widgets will have strong incentive to produce the description files or annotate their code with ScriptDoc/JSDoc such that their libraries and widgets can benefit from the tooling of many leading companies."
Also, "We see mobile AJAX as the next big frontier," Ferraiolo said. "We've been trying to advance the ability for AJAX to be successful for mobile initiatives."
Ferraiolo mentioned the OpenAjax Alliance feature wish list, where the group polled 222 participants and came up with a list of top requests. The top feature requests include: two-dimensional graphics, security, improved low-level DOM (Document Object Model) hooks for visual layout, DOM performance, rich text editing, server push (Comet), video and audio, Ferraiolo said.