Known Issues for Sybase Unwired WorkSpace – Mobile Business Object Development

Learn about known issues and apply workarounds for Sybase Unwired WorkSpace and mobile business object (MBO) development.

Issue #Description
SMPONP-11470
SUP tooling now supports JIT WSDL parsing features

Problem: When you build a Web Service MBO, the Eclipse Workspace hangs when trying to connect to a Web Service.

Solution: Contact Support for Patch 10282.

SMPONP-4941
Error icon is still attached on relationship mapping line in MBO diagram after deleting duplicated relationship

If two or more relationships are created between two MBOs, an error icon displays on the relationship line in the Mobile Application diagram. The error icon continues to display, even after the duplicated relationship is deleted.

Workaround: Close and reopen the Mobile Application diagram; the error icon disappears.

SMPONP-2566
Issues with previously defined output mappings in the Bind Data Source wizard.

In the Bind Data Source wizard for operations that have multiple outputs, the Output Mapping figure does not show any previously defined mappings, and may fail to validate; however, the previously defined mappings prevent the MBO Developer from adding the same mappings again.

Workaround: If the operation definition includes operation arguments, select Finish on the Input Mapping page, without visiting the Output Mapping page. Then make any required changes to the Output Mapping property page.

SMPONP-2563
Cannot create MBO operation when using a structure with LONG/BLOB fields

An operation with type Other is created for an MBO using Properties > Operations > ADD. There, an SAP conection is used to create a BAPI parameter that contains a LONG/BLOB datatype. During the creation of that parameter, Next or Finish has no effect. For example:

  1. In the Properties view of an MBO, navigate to the Operations tab.
  2. Select Add, provide a name for your operation; for example, MyBlobOperation, Type is Other.
  3. Select data source type as SAP and select your SAP connection profile, click Next.
  4. Select Browse and enter the BAPI that contains the LONG/BLOB parameter in the text box below Refresh. Click Search ..., select the BAPI, and click Next.
  5. In the Parameter Definition, select the LONG/BLOB parameter as In Parameter, click Next or Finish.
Neither is working. The problem is caused by an exception thrown when a dialog box should open.
Workaround:
  1. Create the operation as before but select Bind data source later, and click Finish.
  2. In the Properties view of the created operation, click the Data Source tab.
  3. Select Bind Data Source, select type as SAP and select your SAP connection profile, click Next.
  4. Click Browse and enter the BAPI that contains the LONG/BLOB in the text box below Refresh, then click Search ...
  5. Select the BAPI and finish the dialog.
  6. In Parameter Definition select LONG/BLOB, and click Next.
  7. In Input Mapping, drag the argument containing the BLOB from the Remote Operation Arguments tree on the right side to the Client Parameters folder in the Values tree on the left side, and accept the informational pop-up dialog.
A client parameter is added and mapped to the argument.
RTC-407
Sybase Unwired WorkSpace no longer automatically generates client parameter definitions and mappings to operation arguments.

Prior to Sybase Unwired Platform version 2.2 SP02, Sybase Unwired WorkSpace automatically generated client parameter definitions and mappings to operation arguments. Beginning with Sybase Unwired Platform version 2.2 SP02, those client parameters and mappings would remain after migration to Sybase Unwired Platform version 2.2 SP02 and later, but if the MBO developer creates new MBO operations, Sybase Unwired WorkSpace does not automatically create the client parameter definitions and the mappings to operation arguments, except for operation of Other type. For Other operation type, client parameters are automatically created even after Sybase Unwired Platform version 2.2 SP02.

Workaround: If the MBO developer wants to map the client parameters to operation arguments, drag and drop the operation argument to the Client Parameters folder in the Input Mapping page in the MBO Operation wizard or Input Mapping tab in the Properties view.

RTC-367
The internal default page size is used during Object API code generation if Unwired Server is not selected, which can lead to code generation failure without visible error from the code generation wizard.

If the MBO developer does not select Unwired Server during code generation, the default page size is used. If the internal default page size is too small, code generation fails without creating objectAPI code, and the page size error only displays in the Error Log view, but not in the code generation wizard.

Workaround: Select an Unwired Server connection profile to enable the Page size field, then select a proper page size. Also, as a common troubleshooting practice, open the Error Log in Sybase Unwired WorkSpace to find clues when the MBO developer detects any error symptoms.

RTC-350
An MBO that is modeled and bound to data source, then has all attributes deleted from the MBO at a later point, fails to deploy to Unwired Server.

Workaround: Use the Bind data source later option to create an MBO that has no attributes.

RTC-346
Sybase Unwired WorkSpace reports an error when a synchronization parameter is mapped to more than one load argument after migrating from a previous release.

Workaround: Remove redundant synchronization parameter to load argument mappings.

RTC-336
Deployment fails with unknown issue error when an MBO with custom object queries is renamed. 

Workaround: Modify the object query definition to reference the new MBO name.

RTC-217
 Sybase Unwired WorkSpace is missing the warning message in the Input Mapping section for migrated projects that have an operation with a mapping of an argument to both an attribute and personalization key.

Prior to Sybase Unwired Platform version 2.2 SP02, Sybase Unwired WorkSpace allowed mapping of an operation argument with 'Filled from Attribute', client parameter, and personalization key values at the same time, even though it might not work properly on the device application during runtime. Beginning with version 2.2 SP02, when adding a mapping of an operation argument, Sybase Unwired WorkSpace now allows only one of the three sources (MBO attribute, client parameter, personalization key) to map into the operation argument at one time; that is, the argument value sources are mutually exclusive.  However, when migrating the Mobile Application project from earlier versions, Sybase Unwired WorkSpace preserves the original MBO operation argument value assignment choices the developer made so that it is backward compatible with the project in the earlier version. Sybase Unwired WorkSpace does not remove any mappings when migrating a project.  While a warning is displayed if an argument is mapped to a client parameter and either an attribute or personalization key, no warning is displayed if mapped to an attribute and personalization key at the same time. 

Workaround: Adjust the MBO model so an operation argument maps to only one source.

RTC-151
When the MBO Developer adds load arguments that map to personalization keys, selecting Refresh may fail due to missing default values for the load arguments. The default values of the personalization keys are not used when performing the refresh. 

Workaround:  Unmap the personalization key field, which allows you to specify the necessary default values so that the execution to the EIS retrieves MBO metadata successfully.

CR-713043
Foreign key constraint violation error message.

You see a foreign key constraint violation error message if you create an MBO by dragging and dropping a table in which the foreign key and the primary key are both "identity" types.

Workaround: The MBO is created, and you can safely ignore these error messages.

CR-706312
A newly created record is deleted from the EIS, but still exists in CDB and device and always remains.

An MBO with a load argument and synchronization parameter contained in a cache group that uses an On-demand cache group policy with an interval greater than zero, where its load parameter is not mapped to a "Propagate to Attribute". If a record is created on the device (and synchronized with the EIS), then deleted later in any way from the EIS, when the On-demand cache group interval expires, a synchronization request from the device refreshes the CDB and device correctly. Although the newly created record has been deleted from the EIS, it still exists in CDB and device and will always remain. 

Workaround: Map the MBO's load argument to a corresponding Propagate to Attribute. If there is no corresponding attribute, add one, then map it.

CR-705643
Sybase Unwired WorkSpace does not refresh the attributes of a MBO based on a stored procedure after the stored procedure definition has been changed in the EIS.

Workaround: After changing the stored procedure definition in the EIS re-create the JDBC MBO.

CR-703200
MBO operations that include old value arguments that use large object types should be ignored, but SQL clauses still include the old value arguments.

Sybase Unwired WorkSpace automatically creates an MBO with old value arguments for operations. If the datasource includes operation arguments with large object types (BigString/BigBinary), Sybase Unwired WorkSpace shows a warning message that says the old value argument with large object types are ignored, but the SQL definition generated still includes the old value argument with the large object type.

Workaround: Manually remove any SQL clauses that include old value arguments with large object types.

CR-689859
The Sybase Unwired WorkSpace Welcome page moves to standby mode after Eclipse is started.

This is due to a known Eclipse 3.7 bug (https://bugs.eclipse.org/bugs/show_bug.cgi?id=355560). In standby mode, the Welcome page is docked to the right as a view in the Mobile Development perspective, since the Problem View is part of the Mobile Development perspective.

Workaround: Double-click the docked Welcome page to extend it to full screen.

CR-689707
Default runtime values requirements.

For an MBO operation, a non-nullable argument must get its runtime value from one of the following: client parameter, personalization key, default value, or fill-from-attribute. If a non-nullable argument already uses a fill-from-attribute or client parameter, its default value is ignored. Sybase Unwired WorkSpace still allows the user to input a default value.

Workaround: In this case, you need not set the default value, because it is not used during runtime. But if a non-nullable argument already uses a personalization key, its default value is removed and disabled, since its default value is taken from the default value of the personalization key.

CR-688576
The Oracle datatype NCLOB is not supported.
Workaround: Convert the CLOBS datatype to a varchar datatype. There are two ways to do this:
  • Create a stored procedure and call it from the MBO. In the stored procedure, convert the CLOBS to varchar:
  • Create this Transact-SQL® statement, which fetches 4000 bytes of the CLOB: select dbms_lob.substr( x, 4000, 1 ) from T.

    The maximum varchar length allowed in Transact-SQL statements is 4000 bytes. You can increase this to 32KB. Sybase recommends that you use a stored procedure to process the BLOB in this way. For example:

    declare 
      my_var long; 
    begin 
      for x in ( select X from t ) 
      loop 
        my_var := dbms_lob.substr( x.X, 32000, 1 );
.
CR-676634
For Web Service and other data sources with complex structures and deeply nested element trees, StackOverflow or OutOfMemory messages may occur, or some of the operation input parameters may not be generated properly.
In some cases, you see this error:
The assigned stack size and/or heap size is 
not sufficient for the attempted operation.

Workaround: Increase the stack and heap size of the Eclipse runtime parameter in UnwiredWorkSpace.bat with -Xmx, -Xms, -Xss arguments, or reduce the complexity or nested level of the Web Service definition of the MBO operation.

CR-642942
Cannot generate code with Javadoc option enabled to a folder containing Chinese characters.

When using the Code Generation wizard, if you enable the option to generate Javadoc, you cannot generate the code to a folder containing Chinese characters without first changing the language for non-Unicode programs to Chinese.

Workaround:
  1. Select Start > Settings > Control Panel.
  2. Double-click Regional and Language Options, then click the Advanced tab.
  3. From the drop-down list, select Chinese, and click Apply.
  4. Click OK.