Before you start
This tutorial teaches you how to use threads in MIDlets to communicate over a network connection. Without multithreading, a MIDlet that requests a network connection blocks while waiting for a response from the network. In the real world, a user expects the application to continue running, even while a network connection is underway.
I begin the tutorial by demonstrating the problems of non-threaded MIDlets. From there, you learn what you need to know about threading, including the two approaches for working with threads in Java
In the final section of the tutorial, you'll build a multithreaded MIDlet. This application prompts the user for the URL of an image to download. Once the network connection has been initiated, and the download stated, the user is returned to the main application interface. From here, even while the download is in progress, the user is able to move about the interface, including entering a new URL path. Upon completion of the download, the MIDlet notifies the user with a dialog box indicating success (hopefully, rather than failure), and the downloaded image is displayed.
After completing the tutorial you should have a solid understanding of the importance of multithreading and a foundation to build upon for creating your own threaded MIDlets.
You'll need two software tools to complete this tutorial:
- The Java Development Kit (JDK): The JDK provides the Java source code compiler and a utility to create Java Archive (JAR) files. When working with version 2.0 of the Wireless Toolkit (as I will be here), you'll need to download JDK version 1.4 or greater. Download JDK version 1.4.1.
- The Wireless Toolkit (WTK): The Sun Microsystems Wireless Toolkit (WTK) is an integrated development environment (IDE) for creating Java 2 Platform, Micro Edition (J2ME) MIDlets. The WTK download contains an IDE, as well as the libraries required for creating MIDlets. Download J2ME Wireless Toolkit 2.0.
The Java Development Kit (JDK)
Use the JDK documentation to install the JDK. You can choose either the default directory or specify another directory. If you choose to specify a directory, make a note of where you install the JDK. During the installation process for the Wireless Toolkit, the software attempts to locate the Java Virtual Machine (JVM); if it cannot locate the JVM, you are prompted for the JDK installation path.
The Wireless Toolkit (WTK)
This tutorial builds on an earlier developerWorks tutorial "MIDlet Development with the Wireless Toolkit" (see Resources), which explains the basics of creating MIDlets with the toolkit. This tutorial is an excellent starting point if you are new to the Wireless Toolkit.
The Wireless Toolkit is contained within a single executable file. Run this file to begin the installation process. It is recommended that you use the default installation directory. However, if you do not use the default directory, make sure the path you select does not include any spaces.




