InomHitta mer dokumentationSupportresurser som ingår | Ladda ner denna bok i PDF (2487 KB)
Chapter 1 Overview of Sun Java System Mobile Enterprise PlatformThis document describes the architecture of Sun Java System Mobile Enterprise Platform (MEP). It also describes how these components communicate with each other to provide a seamless data synchronization experience. IntroductionMEP is an open standards-based platform that enables access between enterprise applications and mobile devices. MEP provides reliable two-way data synchronization with security, device management, and offline access. MEP helps companies maximize return on investment on their existing IT infrastructure by reducing the cost of developing and provisioning client applications. It also empowers corporate mobile workers to be more productive by providing them with access to mission-critical data, from anywhere, at any time. MEP includes the following features:
MEP overcomes the following challenges:
MEP Deployment ScenariosMEP can be deployed in two different ways, in a mobile provider managed scenario and in an enterprise managed scenario. Mobile Provider Managed Deployment ScenarioIn a mobile provider managed scenario, such as the one shown in Figure 1–1, the Gateway engine and its associated sync database form the Gateway tier in the carrier's network. The corporate network includes the MEP Enterprise tier components and the EIS/EAI system. Figure 1–1 Mobile Provider Managed Deployment
Enterprise Managed Deployment ScenarioIn an enterprise managed scenario, such as the one shown in Figure 1–2, all of the MEP components and the database or EIS/EAI system are in the corporate network. Figure 1–2 Enterprise Managed Deployment
The carrier's network includes no MEP components. The corporate network, in essence, controls all of the MEP components as well as the database or EIS/EAI system. In the corporate network, the MEP components can be configured in a single-tier or two-tier configuration. These configurations are described in MEP Architecture. MEP ArchitectureMEP supports synchronization of enterprise data between Open Mobile Alliance Data Synchronization (OMA DS) enabled mobile phones and a database or EIS/EAI system. The MEP architecture is based entirely on open industry standards and is designed to operate a highly scalable, fault-tolerant environment tightly integrated with the existing infrastructure. MEP includes support for automatic failover and load-balancing, providing near-linear scalability. This architecture has been proven in carrier-grade deployments. The major highlights of the MEP architecture are as follows.
Figure 1–3 illustrates a single-tier MEP architecture. The client Sync App uses the APIs in the client library to communicate with the Gateway Engine, Enterprise Connector, and the Sun JCA Adapter. The adapter communicates with the EIS/EAI system. Figure 1–3 Single-Tier MEP Architecture
Figure 1–4 shows a two-tier architecture, consisting of a Gateway tier and an Enterprise tier. The Gateway tier includes the Gateway Engine and Web Service connector. The Enterprise tier includes the Web Service endpoint and Enterprise Connector, as well as the Sun JCA Adapter that communicates with the EIS/EAI system. The Web Service connector in the Gateway tier uses SOAP over HTTPS (or HTTP) to communicate with the Web Service endpoint in the Enterprise tier. The Enterprise Connector uses the ECBO APIs to communicate with the Connector Library and the JCA APIs to communicate with the Sun JCA adapter which, in turn, communicates with the EIS/EAI system. Figure 1–4 Two-Tier MEP Architecture
Synchronization TypesMEP supports the following types of client-initiated synchronizations:
There are two ways to initiate the synchronization process: the user can trigger it manually by selecting the appropriate menu item in the client device's Java ME client, or the server can initiate the process (Push). As defined by the Open Mobile Alliance (OMA), for OMA DS Push, the server sends an SMS notification message to the device. If the client has been programmed to act on this message, it can synchronize with the server to retrieve any changes. Both the client and the server store information about changes to their respective data stores since the last successful synchronization. When the next synchronization is performed, the client and server negotiate how the changes are resolved and propagated according to the type of synchronization being performed. The following sections describe the synchronization types. Two-way Sync (Fast Sync)Two-way sync, also called fast sync, is the normal synchronization mode, in which the client and the server exchange modifications to the data that they have stored. An initial slow sync is used to populate the data on the client. The client always initiates this exchange by sending client data modifications to the server. This is called a synchronization request. The server processes the synchronization request, comparing and unifying the data from the client with the data in the server database by means of an Enterprise Connector. Afterwards, the server sends the modified data to the client, which updates the local data store with the information from the server. Figure 1–5 illustrates this process. Figure 1–5 Two-way Sync
Slow SyncThe slow sync is similar to two-way sync, except that all the items in the client databases are compared with all the items in the server databases, on a field-by-field basis. A slow sync can be requested if the client and server data is mismatched or if the client or server loses its information. Typically, the very first sync that a client performs is a slow sync. After that, the client performs fast syncs. If the data on the server or client is lost or corrupted, the next sync must be a slow sync. In practice, a slow sync means that the client sends all its data to the server and the server does a field-by-field analysis, comparing its own data with that sent by the client. After the analysis, the server returns all the modification information to the client. In turn, the client returns the mapping information for all data items added by the server. Figure 1–6 illustrates this process. Figure 1–6 Slow Sync
One-way Sync from ClientThis is one half of a two-way sync. In this mode, the client sends modifications of its data store to the server. The server updates its data store appropriately but does not send modifications of its data store to the client. Refresh Sync from ClientIn this mode, the client exports all its data to the server. The server is expected to replace all its data with the data sent by the client. Note – Use this synchronization type with caution. One-way Sync from ServerThis is the other half of a two-way sync. In this mode, the server sends modifications of its data store to the client. The client updates its data store appropriately but does not send modifications of its data store to the server. Refresh Sync from ServerIn this mode, the server exports all its data from a database to the client. The client is expected to replace all its data with the data sent by the server. Transport LayerThe transport layer for data synchronization between server and client can be HTTP or HTTPS.
MEP Security and AuthenticationSun makes every effort to ensure secure operation of MEP, which was designed with security in mind. MEP supports MD5 for encrypted authentication, and all traffic flowing through the public Internet is encrypted with SSL (HTTPS), ensuring that user data is at no time exposed to prying eyes. For security reasons, MEP does not duplicate the user's data to a local database, but only metadata required during the synchronization process. MEP supports both client-side and server-side security: MEP Client SecurityMEP client security includes the following features:
For details, see Chapter 3, Client Security Architecture, in Sun Java System Mobile Enterprise Platform 1.0 Developer’s Guide for Client Applications. MEP Server SecurityMEP server security features include the following:
Client ProvisioningJSR 124, the Java EE Client Provisioning Specification, provides a framework and APIs for making client applications available on a Java EE server. MEP supports provisioning for client applications through its Administration Console. It provides a provisioning portal that offers the following features:
MEP Administration ConsoleMEP provides a web-based Administration Console that supports the following tasks:
The Administration Console provides different capabilities on each tier of a two-tier installation. For details, see the Sun Java System Mobile Enterprise Platform 1.0 Administration Guide. NetBeans IDE ToolingNetBeans IDE plugin modules simplify the development of applications for MEP as follows:
|