This article is more than 1 year old

Adobe gets Spry about AJAX

Lot easier to code than traditional approaches

Sometimes it seems that you’ve waited ages for an AJAX framework to come along, and then suddenly there’s a whole queue of them lined up, ready for testing. The latest to join the line up is Macromedia - sorry, Adobe now - with its Spry AJAX framework, which you can download here.

Announced and demonstrated last week at The AJAX Experience conference in San Francisco, Spry builds on work done with Flash and Flex, and focuses on working with XML data, as well as providing display widgets and effects. With tools to handle master-detail relationships Spry is an effective way of building, and “AJAXifying”, the type of user interface that’s become familiar to anyone building Flash applications. It’s also a lot easier to code than traditional AJAX approaches…

While Spry comes with a set of its own user interface widgets, it can also be linked directly to Flash components – using FABridge, a set of features from the Flex development team that allow Flash to be controlled by external JavaScript. This will allow XML data to be worked with using Spry (and other JavaScript XML libraries) and displayed using Flash. It’s perhaps not surprising that the combination of Spry, Flash and FABridge is very similar to the OpenLaszlo platform.

Adobe has taken a records-based approach to data. XML query results are read into data sets, with simple XPATH queries used to identify records. Nodes are treated as rows, and sub-nodes are treated as column fields. This allows you to quickly load and page through data, using columns to sort and display information. If you’ve used PHP or ASP.NET you’ll find it easy to start using Spry.

Working with Spry is easy enough. Pages load the JavaScript libraries they need, and then Spry creates datasets by making calls to the URIs of your XML data sources. Datasets can be tied to regions, best thought of as templates for holding and rendering AJAX content. If you change the information in a Spry dataset, the content displayed in the associated region will change. Creating a region can be very quick. All you need to do is add Spry JavaScript calls as specialised attributes on HTML elements – so just make a DIV and then give it an ID, a region declaration and a binding to a dataset. Similarly you can use JavaScript calls and attributes to manage how data is displayed in the region.

Spry lets you link datasets together. All you need to do is set up a binding from one to control the second. This is the key to how you can build a master-details relationship quickly and easily. A demonstration at The AJAX Experience showed a catalogue site, with a list of products and a detailed description and image in separate section of the page. Each of these was a separate Spry dataset in a separate region. By linking the two datasets together a user can then scroll through a list of products in one page region, seeing relevant details and images in another. Adobe is making sure that its AJAX toolkit works well with the rest of its web design and application tools, with direct links between Flex and Spry.

A further demonstration showed the master-details page with a Flash charting component showing additional information about product sales, controlled by Spry’s AJAX UI components. Using the FABridge libraries is easy enough, and Spry has designed to work with Adobe’s existing JavaScript application frameworks – including Flex 2.0. One thing Adobe’s made clear is that Spry is not linked to DreamWeaver – though future versions will make it easier to work with and test Spry-based AJAX applications.

As Spry will be distributed as free JavaScript libraries, you’ll be able to work with it using any HTML editing tool, from Notepad and vi to Eclipse. Of course, Adobe is hoping that Spry will sell additional copies of both DreamWeaver and its Eclipse-based Flex Builder web application development tool - these poor vendors do have a living to make. ®

More about

TIP US OFF

Send us news


Other stories you might like