This document provides late-breaking information about Sun GlassFish Mobility Platform 1.1, formerly called Sun Java System Mobile Enterprise Platform (MEP).
Sun GlassFish Mobility Platform is a comprehensive mobility solution that enables offline data access, data synchronization, and secure access to EIS/EAI applications such as Siebel and SAP.
Sun GlassFish Mobility Platform is based entirely upon open standards, including the following:
Java Platform, Mobile Edition (Java ME)
Java Platform, Enterprise Edition (Java EE)
The dominant industry standard OMA DS, formerly known as SyncML. The specifications for Open Mobile Alliance Data Synchronization V1.1.2 and V1.2.1 are available at http://www.openmobilealliance.org/Technical/release_program/ds_v112.aspx and http://www.openmobilealliance.org/Technical/release_program/ds_v12.aspx.
This document contains the following sections:
The following product features have been introduced in Sun GlassFish Mobility Platform 1.1:
A new AES security manager, which client applications can use instead of the default triple-DES security manager
A new client SyncManager.getProperties method to retrieve SyncML Experimental Meta Information (EMI) properties
Salesforce demo application with a new Salesforce connector
Support for RESTful Web Services (JAX-RS)
Dynamic Data support through RESTful Web Services
Support for record merging
Blackberry and Palm Windows OTA client provisioning
Support for logging using the GlassFish logging capability
Maven archetypes to simplify connector development
This section lists the requirements that must be met before installing the Sun GlassFish Mobility Platform software.
These requirements are in addition to the requirements for the sync database you use (either MySQL or Oracle). Consult the database documentation for information about those requirements. If you use Oracle software for the sync database, it is strongly recommend that you install it on a different system from the one where you install the Sun GlassFish Mobility Platform software. See the Sun Java System Mobile Enterprise Platform 1.0 Installation Guide (http://download.oracle.com/820-3750) for more information.
The requirements for Sun GlassFish Mobility Platform are similar to the requirements for Enterprise Server, because the Sun GlassFish Mobility Platform software is deployed on Enterprise Server. Table 1–1 shows these requirements.
Table 1–1 Supported Operating Systems
Operating System |
Minimum Memory |
Recommended Memory |
Minimum Disk Space |
Recommended Disk Space |
JVM |
---|---|---|---|---|---|
Sun Solaris 10 (SPARC, x86), Open Solaris 2008.11 |
512 MB |
1 GB |
250 MB free |
500 MB free |
Java SE 6 |
Red Hat Enterprise Linux 4, 5 |
512 MB |
1 GB |
250 MB free |
500 MB free |
Java SE 6 |
Microsoft Windows 2003, Microsoft Windows XP Professional |
1 GB |
2 GB |
500 MB free |
1 GB free |
Java SE 6 |
Sun GlassFish Mobility Platform is supported on all Java ME and GPRS/UMTS enabled mobile devices that support the following specifications:
MIDP 2.0
CLDC 1.1 or CDC 1.1.2
JSR-75
See “Client Device Requirements” in Sun GlassFish Mobility Platform 1.1 Developer’s Guide for Client Applications (http://download.oracle.com/820-7206/ggcmp?a=view) for details on the supported Java ME specifications.
Sun GlassFish Mobility Platform has been tested with the following mobile client devices:
BlackBerry smartphone
Palm Treo 700p or 755p device running the PalmOS software
Palm Treo 700wx device running the Windows Mobile software
Before you can install the Sun GlassFish Mobility Platform client software on a Palm Treo device, the device must have the IBM J9 Java Virtual Machine (JVM) installed on it. You must obtain the J9 JVM from IBM.
A Palm Treo device running the PalmOS software must have a memory card.
Sun GlassFish Mobility Platform has been tested with the Siebel CRM and SAP ERP systems and with the MySQL and Oracle databases.
If your EIS/EAI system is SAP, you must download some libraries from SAP and must also configure the Enterprise Server to work with the Sun JCA Adapter for SAP, as described in the following sections:
The SAP Java Connector toolkit (SAP JCo) is a middleware component that enables the Sun JCA Adapter for SAP to communicate directly with SAP. This component is required by the SAP BAPI OTD Wizard, which you use when you develop an Enterprise Connector that accesses a Sun JCA Adapter. (See “Accessing a Sun JCA Adapter for an EIS/EAI System” in Sun GlassFish Mobility Platform 1.1 Developer’s Guide for Client Applications, (http://download.oracle.com/820-7206/ggxcs?a=view), for details.)
You must be a licensed SAP customer in order to gain access to these SAP libraries.
Log in to the SAP site http://service.sap.com/connectors using your authorized login.
Click SAP Java Connector.
In the left-hand menu, click Tools and Services.
Download the SAP JCo archive file for your operating system.
Unzip the archive file into a directory of your choice.
After you unzip the archive, you will find a JAR file named sapjco.jar. You will also find one or two libraries specific to your operating system (the number varies depending on the version of SAP you are using).
Copy all these files into the Enterprise Server lib directory.
This directory is as-install/lib, where as-install is the directory where you installed the Enterprise Server.
You need to create a connector connection pool and a connector resource for the Sun JCA Adapter for SAP, and then set properties for the connector connection pool. On a two-tier Sun GlassFish Mobility Platform installation, this task must be performed on the Enterprise tier (the second tier).
Create the sappool connection pool.
In a browser, go to http://hostname:4848/ and log in to the Enterprise Server Admin Console as admin.
The default password is adminpass.
For a single-tier installation, hostname is the name of the system where Sun GlassFish Mobility Platform is installed. For a two-tier installation, hostname is the name of the system where the Enterprise tier (the second tier) is installed.
In the tree view, expand Resources, then Connectors, and then select Connector Connection Pools.
Click New.
The New Connector Connection Pool panel appears.
Type sappool in the Name field.
Choose sun-sap-adapter from the Resource Adapter drop-down list.
Click Next.
Click Finish.
Create the jcaps/sap connector resource.
Modify the settings for the sappool connection pool.
In the tree view, expand CAPS, then expand Connector Connection Pools.
Click sappool.
If the sappool connector connection pool does not appear in the tree view, expand another node, then expand Connector Connection Pools once again. You should now see sappool.
Specify Client Connection Settings as indicated in the following table.
Name |
Description |
---|---|
Client Connection Mode |
Choose Automatic if it is not already selected |
Application Server Hostname |
The name of your SAP server |
System Number |
The system number given you by SAP (often 00) |
Client Number |
The client number given you by SAP |
User |
Your SAP user name |
Password |
Your SAP password |
Language |
The language you use for SAP access |
System ID |
The system ID of your SAP installation |
Use the default values for all other settings.
Click Save.
If you are using a 64–bit JDK, add a JVM setting.
In the tree view, select the Application Server node.
Click the JVM Settings tab, then click the JVM Options sub-tab.
Click Add JVM Option.
In the Value field, type -d64.
Click Save.
Click the Restart Required link.
Click Stop Instance.
Restart the Enterprise Server from the command line:
as-install/bin/asadmin start-domain mep |
It is recommended that Solaris 10 (x86, SPARC) users have the “Sun recommended patch cluster” installed. This patch cluster is available under “Recommended and Security Patches” on SunSolve.
The Sun GlassFish Mobility Platform 1.1 documentation set will be available at http://docs.sun.com/coll/1918.1. To learn about Sun GlassFish Mobility Platform, refer to the books listed in the following table.
Table 1–2 Books in the Sun GlassFish Mobility Platform Documentation Set
Book Title |
Description |
---|---|
Late-breaking information about the software and the documentation. Includes a comprehensive summary of the supported hardware, operating systems, application server, JavaTM Development Kit (JDKTM), databases, and EIS/EAI systems. |
|
Introduction to the architecture of Sun GlassFish Mobility Platform. |
|
Installing the software and its components, and running a simple application to verify that installation succeeded. |
|
Deployment of applications and application components to Sun GlassFish Mobility Platform. |
|
Sun Glassfish Mobility Platform 1.1 Developer’s Guide for Client Applications |
Creating and implementing Java Platform, Mobile Edition (Java ME platform) applications for Sun GlassFish Mobility Platform that run on mobile devices. |
Sun Glassfish Mobility Platform 1.1 Developer’s Guide for Enterprise Connectors |
Creating and implementing Enterprise Connectors for Sun GlassFish Mobility Platform intended to run on Sun GlassFish Enterprise Server. |
System administration for Sun GlassFish Mobility Platform, focusing on the use of the Sun GlassFish Mobility Platform Administration Console. |
For up-to-the-minute information about Sun GlassFish Mobility Platform from the Sun GlassFish Mobility Platform technical team at Sun, see the Enterprise Mobility Blog at http://blogs.sun.com/mobility/.
The following known issues and bugs affect the operation of the Sun GlassFish Mobility Platform 1.1 release.
Problem Summary: When you launch a MIDlet on the Palm Treo with Windows Mobile and the IBM J9 JVM, the client GUI display seems to disappear; it is in the background.
Workaround: To bring the MIDlet to the foreground, close the Windows Mobile file explorer by clicking the X in the upper right hand corner.
The BlackBerry client applications all use the same directory on the filesystem: /home/user/pictures. The files are not removed when you erase a client application. Be aware that files written to the filesystem by the secure client will be visible to the nonsecure client, but will not be readable, since they will be encrypted.
If you configure an incorrect Username or Password with the SMS tab of the Admin Console, and you try to send an SMS message to all user accounts from the Upload sub-tab of the Provisioning tab, you see a misleading error message in the synchronica.log file that reports an IllegalStateException. It does not mention the incorrect username or password that is the real problem. The error message looks something like this:
ERROR [StandardSendShortMessageUseCase] Send SMS to phone number '+17815551212' with short message 'Hello! There is a new MEP client available for download at http://129.148.71.115:8080/sync/admin/client' has failed: Failed to send text SMS; nested exception is: java.lang.IllegalStateException: not bound |
If you use MySQL as the Sun GlassFish Mobility Platform Sync database, make sure that the default character set is latin1. A setting of utf8 causes installation errors that look like this:
JDO76614: Deployment encountered SQL Exceptions: JDO76609: Got SQLException executing statement "CREATE TABLE PARSTAMPBEAN (TIMESTAMP9 BIGINT NULL, PARFILE VARCHAR(256) NOT NULL, CONSTRAINT PK_PARSTAMPBEAN PRIMARY KEY (PARFILE)) ENGINE=InnoDB": java.sql.SQLException: Specified key was too long; max key length is 767 bytes JDO76609: Got SQLException executing statement "CREATE TABLE PARCOUNTERBEAN (COUNTER BIGINT NULL, COUNTERNAME VARCHAR(256) NOT NULL, CONSTRAINT PK_PARCOUNTERBEAN PRIMARY KEY (COUNTERNAME)) ENGINE=InnoDB": java.sql.SQLException: Specified key was too long; max key length is 767 bytes
To change the character set, you can restart MySQL with a particular character set, as described in Server Character Set and Collation. On Windows, you can run the MySQL Server Instance Config Wizard to change the character set.
The client provisioning feature in Sun GlassFish Mobility Platform 1.1 does not work with the J9 JVM on the Palm mobile devices.
Problem Summary: The Sun GlassFish Mobility Platform 1.1 client bundle includes several unsigned mobile client applications. Java ME JVMs that strictly follow security requirements may excessively prompt users before allowing data retrieval and writing. The MusicDB client application running on the Palm device requires the user to answer approximately 30 prompts before the application can be run. The Salesforce client application on the Palm device never stops prompting, rendering the application on that device unusable. The same application on the BlackBerry device, however, does not prompt the user at all.
Workaround: If you have a Palm device, it is recommended that you run the Salesforce client application using the Windows Toolkit emulator.
Problem Summary: Under certain conditions, Sun GlassFish Mobility Platform performance may be slower than it should be. This degradation is caused by the removal of the FastInfoset.jar and jaxb-impl.jar files from the Sun GlassFish Enterprise Server v2.1 distribution.
Workaround: Download the appropriate JAR files for FastInfoset 1.0 and JAXB 2.2 and put them in your classpath.
Problem Summary: The Show Log function on the Edit Users tab in the Sun GlassFish Mobility Platform Administration Console does not work with Internet Explorer. This problem has been filed as CR 6803604.
Workaround: Use a different browser, such as Mozilla Firefox, to view the log.
Problem Summary: Although all logging in the Sun GlassFish Mobility Platform product now uses the Sun GlassFish Enterprise Serverlogging capability, a Synchronica log file (domains/mep/lib/ds/log/synchronica.log) is still created. This log file contains meaningless data.
Workaround: Ignore the Synchronica log file.
Problem Summary: Searching provisioned archives returns BlackBerry archives only.
Workaround: Use the Repository tab in the Sun GlassFish Mobility Platform Administration Console to view all archived repositories. Client applications can see all archived bundles that have been provisioned by browsing http://gateway_hostname:8080:/sync/admin/client.
Problem Summary: When directed to perform a synchronization, the Salesforce sample application will perform an initial synchronization the first time the Salesforce sample application is run or after local data has been deleted from the client using the Delete function under Options. This is the expected behavior. After the initial synchronization, however, the Salesforce sample application will continue to perform restoration (initial) synchronizations only; no updates will be sent from the client to the server, even if new data on the client has been created. This issue only arises when there is no data on the client.
Workaround: Exit the application after the initial synchronization completes. Then restart and reenter the application.