DSDP Mobile Tools for Java 1.0 Release Notes

This the first DSDP Mobile Tools for Java release after the project graduation. MTJ is based on EclipseME project and added a lot of new features and bug fixes. MTJ already had two releases as a DSDP incubated project: MTJ 0.9 and MTJ 0.9.1 Those releases provided all basic features that were already available on EclipseME plus several enhancements. MTJ 1.0 focus mainly in defining the MTJ API . This API enables any plug-in developer to extend MTJ to add vendor specific features. Besides that, there were three main features added that are listed below:

MTJ 0.9 and MTJ 0.9.1 release notes provide a detailed list of all features that available on them.

Several bug fixes were also implemented on this release based on the community feedback of MTJ 0.9 and 0.9.1 releases.

Getting Started
MTJ documentation provides a detailed getting started document with a step-by-step of how to setup your environment. There is also a MTJ Video and a MTJ Webinar that can be used as references. If you still have questions, feel free to post them on DSDP MTJ Newsgroup.

The developers community on DSDP Mobile tools for Java project is the main responsible for the project success. Since the project was started there was a lot of contributions from different companies. Below is a lost of all of them:
  • Craig Setera (individual)
  • Inlogic Software ltd
  • Motorola
  • Nokia
  • RIM
  • Sybase
MIDlet Templates
The MIDlet templates feature make it is easy to start the development of some specific types of MIDlets. The main idea of it is to provide a basic set of templates that will automatically generate the code that is necessary to implement some specific feature. For example there is a Game Template that provide a simple canvas implementation and all thread management to update it in a predefined rate. The templates are presented on the MIDlet Create Wizard and each of them can provide a customized Wizard to set some template specific properties

MIDlet Wizard

Currently there are 6 templates being distributed with DSDP Mobile Tools for Java Runtime package. Five of them use basic MIDP APIs and can be executed on any MIDP complaint SDK. One of them is a eSWT template that requires a SDK that supports this API.

Signing Enhancements
The Signing enhancements enables the JavaME developer to manage the keystore that is used to sign the MIDlet suite directly from the Eclipse IDE. Besides that MTJ also scans the MIDlet suite code to find the APIs that requires some specific permissions to be used and suggest the permissions that should be added to the code.

Sign Tab

On the project properties the developer is able to select if he wants to sign the project on every build (Create Package operation) and also set the password request rule (always ask or save the password).

Build Properties
The Build properties feature is directly associated to the multiple device configuration that was added on MTJ 0.9.1. This feature allows a MIDlet suite project to have several configuration. Each configuration is associated to a SDK/Device that represents it and, during the build process, a JAR/JAD is generated for each configuration. One limitation of this feature was that all files were always included on each configuration, and there was no way to define that one specific image, for instance, should only be added to one specific configuration. The build property file solves that.

Sign Tab

On the build properties file there is an entry for each configuration that is added to the project and then the developer is able to select which files should included on the final JAR package. It is also possible to filter that java files that are going to be build on each configuration.

Sign Tab

MTJ API provides a way to extend current MTJ and add vendor specific features. MTJ 1.0 provides a set of APIs and extensions points. For a detailed list of them, please check MTJ Developer Documentation and