LiveCycle Data Services featuresThe following figure shows the main features of LiveCycle Data Services: ![]() LiveCycle Data Services core featuresThe LiveCycle Data Services core features include the RPC services, Message Service, and Data Management Service. RPC servicesThe Remote Procedure Call (RPC) services are designed for applications in which a call and response model is a good choice for accessing external data. RPC services let a client application make asynchronous requests to remote services that process the requests and then return data directly to the client. You can access data through client-side RPC components that include HTTP GET or POST (HTTP services), SOAP (web services), or Java objects (remote object services). Use RPC components when you want to provide enterprise functionality, such as proxying of service traffic from different domains, client authentication, whitelists of permitted RPC service URLs, server-side logging, localization support, and centralized management of RPC services. LiveCycle Data Services lets you use RemoteObject components to access remote Java objects without configuring them as SOAP-compliant web services. A client-side RPC component calls a remote service. The component then stores the response data from the service in an ActionScript object from which you can easily obtain the data. The client-side RPC components are the HTTPService, WebService, and RemoteObject components. Note: You can use Flex SDK without the LiveCycle Data
Services proxy service to call HTTP services or web services directly.
You cannot use RemoteObject components without LiveCycle Data Services
or Adobe® ColdFusion®.
For more information, see Using RPC services. Message ServiceThe Message Service lets client applications communicate asynchronously by passing messages back and forth through the server. A message defines properties such as a unique identifier, LiveCycle Data Services headers, any custom headers, and a message body. Client applications that send messages are called message producers. You define a producer in a Flex application by using the Producer component. Client applications that receive messages are called message consumers. You define a consumer in a Flex application by using the Consumer component. A Consumer component subscribes to a server-side destination and receives messages that a Producer component sends to that destination. For more information on messaging, see Using the Message Service. The Message Service also supports bridging to JMS topics and queues on an embedded or external JMS server by using the JMSAdapter. Bridging lets Flex client applications exchange messages with Java client applications. For more information, see Connecting to the Java Message Service (JMS). Data Management ServiceThe Data Management Service lets you create applications that work with distributed data. By using the Data Management Service, you build applications that provide real-time data synchronization, data replication, on-demand data paging, and occasionally connected application services. You can manage large collections of data and nested data relationships, such as one-to-one and one-to-many relationships. You can also use data adapters to integrate with data resources, such as a database. Note: The Data Management Service is not available in BlazeDS.
A client-side DataService component calls methods on a server-side Data Management Service destination. Use this component to perform activities such as filling client-side data collections with data from remote data sources and synchronizing the client and server versions of data. Changes made to the data at the client side are tracked automatically using property change events. When the user is ready to submit their changes, the changes are sent to a service running on the server. This service then passes the changes to a server-side adapter, which checks for conflicts and commits the changes. The adapter can be an interface you write, or one of the supplied adapters that work with a standard persistence layer such as SQL or Hibernate. After the changes are committed, the Data Management Service pushes these changes to any other clients looking at the same data. For more information, see Introducing the Data Management Service. Service adaptersLiveCycle Data Services lets you access many different persistent data stores and databases including Hibernate, SQL, JMS, and other data persistence mechanisms. A Service Adapter is responsible for updating the persistent data store on the server in a manner appropriate to the specific data store type. The adapter architecture is customizable to let you integrate with any type of messaging or back-end persistence system. The message-based frameworkLiveCycle Data Services uses a message-based framework to send data back and forth between the client and server. LiveCycle Data Services uses two primary exchange patterns between server and client. In the first pattern, the request-response pattern, the client sends a request to the server to be processed. The server returns a response to the client containing the processing outcome. The RPC services use this pattern. The second pattern is the publish-subscribe pattern where the server routes published messages to the set of clients that have subscribed to receive them. The Message Service and Data Management Service use this pattern to push data to interested clients. The Message Service and Data Management Service also use the request-response pattern to issue commands, publish messages, and interact with data on the server. Channels and endpointsTo send messages across the network, the client uses channels. A channel encapsulates message formats, network protocols, and network behaviors to decouple them from services, destinations, and application code. A channel formats and translates messages into a network-specific form and delivers them to an endpoint on the server. Channels also impose an order to the flow of messages sent to the server and the order of corresponding responses. Order is important to ensure that interactions between the client and server occur in a consistent, predictable fashion. Channels communicate with Java-based endpoints on the server. An endpoint unmarshals messages in a protocol-specific manner and then passes the messages in generic Java form to the message broker. The message broker determines where to send messages, and routes them to the appropriate service destination. ![]() For more information on channels and endpoints, see Client and server architecture. Channel typesLiveCycle Data Services includes several types of channels, including standard and secure Real Time Messaging Protocol (RTMP) channels and channels that support binary Action Message Format (AMF) and its text-based XML representation called AMFX. AMF and HTTP channels support non-polling request-response patterns and client polling patterns to simulate real-time messaging. The RTMP channels and streaming AMF and HTTP channels provide true data streaming for real-time messaging. LiveCycle Data Services summary of featuresThe following table summarizes some of the main features of LiveCycle Data Services:
|
|