Accessibility
Adobe Flex

Peter Farland

Adobe

Table of Contents

Created:
27 June 2006
User Level:
Beginner
Products:
Flex

Using RPC services in Flex Data Services 2

Important note: Effective with the release of Adobe LiveCycle ES, the Adobe Flex Data Services 2 server product has been rebranded as a Solution Component of LiveCycle ES. This article was written based on Flex Data Services but will likely work as is with LiveCycle Data Services ES. Any articles referring to or using ColdFusion and Flex Data Services are not compatible with LiveCycle Data Services ES. To learn about the new capabilities of LiveCycle Data Services ES, see the tutorials in the LiveCycle Developer Center and read about Adobe LiveCycle Data Services ES.

The Adobe Flex 2 product line provides developers with several important changes to the way they can build and manage service-oriented rich Internet applications (RIAs). Although the changes in Flex packaging make it possible to build and deploy Flex applications with or without a server-side component, new capabilities in Flex Data Services make it more valuable than ever. This article provides an overview of the new capabilities in Flex Data Services 2, with a particular focus on the differences between remote procedure call (RPC) services in Flex 1.5 and the latest version of Flex.

The Flex Data Services 2 messaging framework includes several new quality-of-service features that help make RPC service requests robust. First, each channel checks that it can communicate successfully with the server before sending any requests. Second, the developer can specify multiple channels for each endpoint, making configuration more flexible and enabling failover if the first channel is not available. The messaging framework also supports clustered environments, so RPC services can take advantage of redundant environments to provide robust services.

Flex Data Services 2 also provides a number of capabilities to improve the maintainability of applications. A services-specific configuration file enables developers to add and remove destinations to services, configure channel endpoints, control access to services through security settings, define clusters for robust applications, and fine-tune logging to assist in debugging. The new configuration format also enables developers to add new channels, services, adapters, login commands, and logging targets as technology requirements change.

Flex 1.5 provides three APIs for making asynchronous calls to remote procedures through the RemoteObject, HTTPService, and WebService MXML tags. These services are known as RPC services and developers use them to build applications with a service-oriented architecture (SOA). Flex Data Services 2 continues to provide these RPC services and introduces two new data services, which introduce new capabilities and a new programming model. All services are based on a common messaging architecture powered by a new version of ActionScript (ActionScript 3.0). This document describes the differences between Flex 1.5 and Flex 2 and how Flex Data Services 2 RPC services take advantage of these improvements.

Requirements

To make the most of this article, you need to install the following software:

Important note: Effective with the release of Adobe LiveCycle ES, the Adobe Flex Data Services 2 server product has been rebranded as a Solution Component of LiveCycle ES. This article was written based on Flex Data Services but will likely work as is with LiveCycle Data Services ES. Any articles referring to or using ColdFusion and Flex Data Services are not compatible with LiveCycle Data Services ES. To learn about the new capabilities of LiveCycle Data Services ES, see the tutorials in the LiveCycle Developer Center and read about Adobe LiveCycle Data Services ES.

Flex Builder 2  (SDK Included)

Prerequisite knowledge

Experience developing applications that take advantage of RPC services.

About the author

Peter Farland is a software engineer on the Flex Data Services team. Over the past five years, he has been a member of several server product teams at Macromedia and Adobe, including Flex, Flash Remoting, and ColdFusion.