Generating Java Object API Code

Generate object API code containing mobile business object (MBO) references, which allows you to use APIs to develop device applications for BlackBerry devices.

Prerequisites

Before generating device client code, develop the MBOs that will be referenced in the device applications you are developing. A mobile application project must contain at least one non-online MBO. You must have an active connection to the data sources to which the MBOs are bound.

Task
  1. Launch the Code Generation wizard.
    From Action
    The Mobile Application Diagram Right-click within the Mobile Application Diagram and select Generate Code.
    WorkSpace Navigator Right-click the Mobile Application project folder that contains the mobile objects for which you are generating API code, and select Generate Code.
  2. (Optional) Enter the information for these options:
    Note: This page of the code generation wizard is seen only if you are using the Advanced developer profile.
    Option Description
    Select code generation configuration Select either an existing configuration that contains code generation settings, or generate device client code without using a configuration:
    • Continue without a configuration – select this option to generate device code without using a configuration.
    • Select an existing configuration – select this option to either select an existing configuration from which you generate device client code, or create a new configuration. Selecting this option enables:
      • Select code generation configuration – lists any existing configurations, from which you can select and use for this session. You can also delete any and all existing saved configurations.
      • Create new configuration – enter the Name of the new configuration and click Create to save the configuration for future sessions.

        Select an existing configuration as a starting point for this session and click Clone to modify the configuration.

  3. Click Next.
  4. In Select Mobile Objects, select all the MBOs in the mobile application project or select MBOs under a specific synchronization group, whose references, metadata, and dependencies (referenced MBOs) are included in the generated device code.
    Dependent MBOs are automatically added (or removed) from the Dependencies section depending on your selections.
    Note: Code generation fails if the server-side (run-time) enterprise information system (EIS) data sources referenced by the MBOs in the project are not running and available to connect to when you generate object API code.
  5. Click Next.
  6. Enter the information for these configuration options:
    Option Description
    Language Select Java.
    Platform Select the platform ( target device) from the drop-down list for which the device client code is intended.
    • Java ME for BlackBerry
    Note: When generating code into a plain Java project with language 'Java' and platform 'Java Me for BlackBerry', compilation errors are generated because of code references to RIM API's. To avoid errors, generate code into a BlackBerry project.
    Unwired Server Specify a default Unwired Server connection profile to which the generated code connects at runtime.
    Server domain

    Choose the domain to which the generated code will connect. If you specified an Unwired Server to which you previously connected successfully, the first domain in the list is chosen by default. You can enter a different domain manually.

    Note: This field is only enabled when an Unwired Server is selected.
    Page size

    Optionally, select the page size for the generated client code. If the page size is not set, the default page size is 4KB at runtime. The default is a proposed page size based on the selected MBO's attributes.

    The page size should be larger than the sum of all attribute lengths (a binary length greater than 32767 is converted to a Binary Large Object (BLOB), and is not included in the sum; a string greater than 8191 is converted to a Character Large Object (CLOB), and is also not included) for any MBO that is included with all the selected MBOs. If an MBO attribute's length sum is greater than the page size, some attributes are automatically converted to BLOB or CLOB, and therefore, these attributes cannot be put into a where clause.

    Note: This field is only enabled when an Unwired Server is selected.
    Package Enter a unique name for the Java package.
    Note: Do not use "java" in package names. The Java package name along with the class name makes the fully qualified class name that must be unique into one RIM JVM. If there is a class with the same fully qualified name, the application may fail on real device.
    Destination Specify the destination of the generated device client files. Enter (or Browse) to a Project path or File system path (Mobile Application project) location, and select Generated Code as the destination. JAR files are automatically added to the destination project.

    Select Clean up destination before code generation to clean up the destination folder before generating the device client files.

    Replication-based Select to use replication-based synchronization for the application.
    Message-based This option is not supported for Java applications.
  7. Select Generate metadata classes to generate metadata for the attributes and operations of each generated client object.
  8. Select Generate metadata and object manager classes to generate both the metadata for the attributes and operations of each generated client object and an object manager for the generated metadata.
    The object manager allows you to invoke MBOs using metadata instead of the object instances.
  9. (Optional) Select Generate JavaDoc to generate API documentation from the source code.
  10. Click Finish.