Known Issues for Sybase Unwired WorkSpace – Mobile Business Object Development

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

Issue NumberDescription
CR 709701
Issue: Mapping an MBO create, update, or delete operation parameter to both a personalization key and a client parameter may cause failure on device.

If both are mapped, the client parameter value is ignored and the personalization key value is used. Unwired WorkSpace may show this warning:

Client parameter 'GENERALDATA' might not be used, 
as the mapped argument has 'Fill from Attribute' or 
'Personalization Key' specified.

Although deployment and code generation succeeds, you may still get a NullPointerException in the server log during runtime and the operation fails on the device.

Workaround: Only map create, update, or delete operation parameters to a personalization key or a client parameter, not both.

CR 709076
Issue: After Unwired WorkSpace crashes, the current Eclipse workspace retains inconsistent states that can cause a restart to hang.

Workaround: This is a known Eclipse issue. Remove the following file from the problematic Eclipse workspace, then restart Unwired WorkSpace: <The workspace used in the previous crash>\.metadata\.plugins\org.eclipse.core.resources\.snap.

CR 705643
Unwired WorkSpace fails to refresh the attributes of a MBO based on a stored procedure after changing the stored procedure definition in the EIS.

Workaround: Re-create the JDBC MBO after changing the stored procedure definition in the EIS.

CR 705313
Messages about missing directories and directory contents when you generate ObjectAPI code.
When the MBO developer regenerates ObjectAPI code from the Unwired WorkSpace Code Generation wizard, if Clean up destination before code generation is selected in the Configure Options page, after completing code generation, an error similar to this displays in the Error Log view:
Resource '/<Mobile Application Project name>
/Generated Code/temp_afx does not exist. Resource '
/<Mobile Application Project name>/Generated Code/genfiles' 
does not exist.

Workaround: Ignore the error messages. The objectAPI code generates successfully.

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

Unwired WorkSpace automatically creates an MBO with old value arguments (for operations) when you drag and drop a database table. If the datasource includes operation arguments with large object types (BigString/BigBinary), Unwired WorkSpace displays a warning message stating 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 which include old value arguments with large object types.

CR 702696
Adding load arguments with "Propagate to attributes" that have no corresponding datasource columns, then selecting Refresh, may fail due to missing load argument default values.

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

CR 702691
Calls from Unwired WorkSpace to the EIS during MBO creation/development cannot distinguish syntax from data errors.

When adding an operation and corresponding SQL statement, Unwired WorkSpace executes the SQL statement to verify it is correct. Sometimes the return error is not a syntax error but a data error (for example, a foreign key restriction). The EIS API cannot distinguish syntax from data errors and exits the wizard.  

Workaround: Be aware of the EIS schema to which you are binding the MBO. For example, verify that database data is correct, and enter the correct default values so the SQL statements execute correctly.

CR 702643
Output mapping warning message for multilevel insert operations

During deployment, output mappings are automatically generated for Create operations to support multi-level insert operations. The set of generated output mappings may not be the same as the output mappings configured in Unwired WorkSpace for the operation. However, the final set of output mappings is a union of the two sets, so the user-configured output mappings are retained. The MBO developer may see a warning in the output mapping tab indicating that some output mappings are ignored when using the "Apply Output of ENTITY READ" operation cache policy.

Workaround: Ignore the warning since the output mappings are automatically generated during deployment.

CR 702005
MBO operations bound to SAP BAPIs that use the "Invalidate the cache" policy may not refresh the Unwired Server cache.

Since SAP BAPI operations run asynchronously within the SAP system, the operation may not complete before Unwired Platform attempts to refresh the cache with new or updated results if using the "Invalidate the cache" policy.

Workaround: Do not use the "Invalidate the cache" policy with MBO operations bound to an SAP BAPI.

CR 701440
After starting Unwired WorkSpace, Eclipse OSGI bundle related error message(s) may appear in the Error Log view. For example, org.eclipse.osgi.framework.internal.core.AbstractBundle$BundleStatusException

Workaround: Ignore these errors.

CR 689859
Sybase Unwired Platform 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 via one of the following: client parameter, personalization key, default value, or fill-from-attribute. If a non-nullable argument has fill-from-attribute or client parameter already, its default value is ignored. 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.

CR 688956
Unwired WorkSpace fails during preview or test execute

When doing preview or test execute in Unwired WorkSpace during MBO development if the data volume is large, for example, either a large number of rows, or a large object in the returned result, Unwired WorkSpace may run out of memory and fail.

Workaround: Do not select Preview or Test Execute with large results, or increase the Java VM argument, -Xss -Xms, and -Xmx in the UnwiredWorkSpace.bat to increase the stack and memory (heap) size.

CR 688576
The Oracle datatype NCLOB is not supported.
Workaround: Convert the unsupported datatype to a supported datatype. 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 682651
Unwired WorkSpace does not support saving files as PDF.

Invoking File > Save As Image File from the Object Diagram context menu fails if PDF is the image format.

This is a known Eclipse GMF bug. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=338380

Workaround: None.

CR 677453
When Unwired WorkSpace is uninstalled and reinstalled in a different directory, you get an ClassNotFoundException message if the old workspace is used and you connect using the JDBC connection profile.
Workaround: Update the driver definition to point to the correct path:
  1. From Unwired WorkSpace, select Window > Preferences > Sybase, Inc > Connectivity > Driver Definitions.
  2. Select the driver type, and click Edit.
  3. Click the Jar List tab, and edit the path of the JDBC driver.
  4. Reimport any mobile application projects that require the updated driver for connecting to the database.
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.