Datasheet

13
Adobe Flex 2
between Java and ActionScript automatically and integrates with existing security proles to
handle user authentication and authorization. In addition, because data is transferred in a binary
format, the Remoting Service can signicantly increase performance in applications where large
amounts of data need to be transferred from client to server.
e Proxy Service fullls two functions. First, it enables communication between the Flex client
and domains it cannot access directly, due to security restrictions.
3
By proxying requests from the
applications domain, the Proxy Service enables developers to integrate multiple services with a single
Flex application as well as reduce the opportunity for malicious discovery of security credentials
used to access applications exposed as web or HTTP services. In addition, because services are
accessed via developer-congured names, the Proxy Service also provides a layer of abstraction
between the Flex client and the back-end service, enabling the underlying implementation or
Uniform Resource Identier (URI) to change without requiring modications to the Flex client.
Data Management Service
e Data Management Service is designed to address one of the unique challenges posed by RIAs.
In traditional page-centric HTML applications, the client is mostly used as a data capture and
display device. e client doesnt own a version of the data, except perhaps to edit a particular record,
and even in that case, changes are quickly sent to the server for verication. e data synchronization
(or persistence) process is limited to synchronizing data that exists in middle-tier applications
with data that is stored in a back-end data system (RDBMS, mainframe, and so forth).
With RIAs, however, the application client can own its own copy of the data. With a more
complete data model, applications become more responsive since functions like sorting or
ltering can be performed locally. However, having a local copy of the data introduces several
issues that must be addressed. e application must synchronize and manage data conicts
between the client and the server, especially when application data is constantly changing, as
well as optimize data download and bandwidth utilization in applications with large data sets.
e Data Management Service greatly facilitates the process of synchronizing or persisting data
between the client tier and the middle tier. It can also integrate with existing persistence solutions
(such as Hibernate) to provide an end-to-end persistence solution. e Data Management Service
represents an evolution towards data orientation in which the programming model is centered
on data and objects instead of focusing on method invocations, dramatically improving developer
productivity.
Using the DataService API, developers can automatically synchronize data changes (creates,
reads, updates, and deletes) between all clients using the managed data object as well as with
the back-end data system via the Flex Data Services server. e Data Management Service also
oers developers the ability to manually control when and how data updates are sent from
client to server. If any conicts arise, the Data Management Service raises an exception, and
the developer can use the conict resolution API to handle it appropriately, allowing client
updates to overwrite server updates and vice versa.
e high-level data management API dramatically reduces the amount of code that developers
have to write, debug, and maintain. Not only does it relieve developers of complex synchronization
code, but data objects using the Data Management Service are automatically enabled to use data
paging to maximize client-side application performance and optimize bandwidth utilization. As
a result, developers can focus their eorts on implementing business logic, rather than on low-level
data marshaling or cursor management.
Moreover, because the Data Management Service uses the underlying message service, changes
can also be pushed to other clients that are subscribed to the same destination. is can be extremely
useful for applications in which decisions depend on having the most up-to-date copy of the data,
such as a customer relationship management or inventory tracking application. e Data
Management Service can also be used to create collaboration-enabled applications in which
multiple clients work simultaneously on a common data set.
3
Both Flash Player and the browser’s JavaScript runtime restrict the ability of downloaded code to access network
resources. The sandbox only allows code to access resources on the same domain from which it was loaded, thereby
preventing malicious code from accessing a user’s internal network resources. For more information on the Flash Player
sandbox security model, visit the Adobe Security Center at www.ad obe.com/devnet/security.