Access Web services from wireless devices
The Simple Object Access Protocol (SOAP) has become the most
important data exchange protocol for XML Web services. All Web
services applications must support SOAP. In this article,
Michael Juntao Yuan introduces an essential tool to support Web
services on small wireless devices - the kSOAP parser. As he
illustrates through examples, kSOAP is a powerful tool for
composing and extracting Java data objects to and from SOAP
messages. kSOAP is also flexible and lets users add custom
functionalities through its own APIs or by directly modifying
the source code.
AMS implementation on Palm
Find out how an Application Management Software (AMS)
implementation on Palm, delivered in this example as part of
the IBM WebSphere® Micro Environment Toolkit, lets you
effectively download, install, update, launch, set permissions,
and, finally, delete MIDlet suites on Palm OS-powered devices.
AMS Implementation on Palm
Find out how an Application Management Software (AMS) implementation on Palm, delivered in this example as part of the IBM WebSphere Micro Environment Toolkit, lets you effectively download, install, update, launch, set permissions, and, finally, delete MIDlet suites on Palm OS-powered devices.
Big designs for small devices
Java 2 Platform, Micro Edition (J2ME) Mobile Information Device Profile (MIDP) is widely used for developing interactive applications on mobile devices. However, programming in MIDP can be frustrating because it provides very limited support for interactive content. As a result, some typical user interfaces are difficult to implement in mobile devices. In this article, Ben Hui describes four design patterns, Cascading Menu, Wizard Dialog, Pagination, and Slide Show, which make interactive content creation easier. These design patterns are simple to understand and apply to your projects.
Build database-powered mobile applications on the Java platform
In this article, Michael J. Yuan and Ju Long explain how to create mobile database applications using the Java 2 Platform, Micro Edition/Mobile Information Device Profile (J2ME/MIDP) and the Java 2 Platform, Enterprise Edition (J2EE). The authors introduce an architecture that uses JavaServer Pages (JSPs) as middleware between a MIDP frontend and a database backend. They also explain specific design decisions and implementation issues, such as persistent storage, network connection, session management, and data communication. Their discussion focuses on the integration between the client and server-side Java applications.
Deploying Wireless Java Applications
The aim of this article is to show you the different ways you can download local and network applications to J2ME-enabled devices, for both testing and final deployment.
Deploying Wireless Java Applications
This two-part series of articles will show you how to use J2ME and Bluetooth to develop next-generation wireless applications for tomorrow's market. This first article covers the basics of Bluetooth; the next one will concentrate on using the Java APIs for Bluetooth Wireless Technology (JSR 82) to develop Java technology-enabled applications for Bluetooth-enabled devices.
Developing wireless enterprise applications
In trying to meet the growing demand for mobile enterprise applications, developers are confronted with all of the traditional problems of distributed computing, plus a whole host of new problems that are particular to the mobile space. In 2000, Applied Reasoning began porting its Classic Blend system to the mobile/wireless world.
Device programming with MIDP, Part 1
This article, the first in a three-part series, introduces you to the concept of MIDP APIs and the J2ME platform. You will be exposed to the APIs used to generate graphical, form-based, storage-driven code that is capable of connecting with external resources.
Device programming with MIDP, Part 1
Without too much platform customization or rework, vendors can
use MIDP-compliant devices to develop applications that can run
on multiple wireless platforms. This article, the first in a
three-part series, introduces you to the concept of MIDP APIs
and the J2ME platform. You will be exposed to the APIs used to
generate graphical, form-based, storage-driven code that is
capable of connecting with external resources.
Device programming with MIDP, Part 1
Without too much platform customization or rework, vendors can use MIDP(Mobile Information Device Profile )-compliant devices to develop applications that can run on multiple wireless platforms. This article, the first in a three-part series, introduces you to the concept of MIDP APIs and the J2ME platform. You will be exposed to the APIs used to generate graphical, form-based, storage-driven code that is capable of connecting with external resources.
Device programming with MIDP, Part 2
This second part of Michael Cymerman's MIDP series will focus
on the development of an application using non-graphical user
interface components. In addition, he'll explore the conversion
and storage of application data to the MIDlet RecordStore.
These two concepts are discussed in detail through a simple
Stock Portfolio management application constructed specifically
for this demonstration.
Device programming with MIDP, Part 2
This second part of MIDP series will focus on the development of an application using non-graphical user interface components. In addition, will explore the conversion and storage of application data to the MIDlet RecordStore.
Device programming with MIDP, Part 3
In the final part of this MIDP series, Michael explores the
methods of communication between the MIDlet and the world at
large. Using the APIs contained in Java 2, Micro Edition's
Mobile Information Device Profile (MIDP), developers can
interact with external systems. This article will explore these
APIs in a detailed example, which demonstrates the interaction
that can exist between a J2ME device and a servlet-based Web
system.
Device programming with MIDP, Part 3
In the final part of this MIDP series, Michael explores the methods of communication between the MIDlet and the world at large. Using the APIs contained in Java 2, Micro Edition's Mobile Information Device Profile (MIDP), developers can interact with external systems. This article will explore these APIs in a detailed example, which demonstrates the interaction that can exist between a J2ME device and a servlet-based Web system.
DoJa brings mobile Java to i-mode phones
With more than 40 million subscribers in Japan, NTT DoCoMo's
i-mode is one of the most popular wireless Internet services in
the world. Most people have heard of i-mode. Less well known is
its Java environment, DoJa, which provides a platform for
highly interactive, graphical, and networked applications. This
article introduces DoJa and its different versions, and
explains how it relates to its mobile Java cousin, the Mobile
Information Device Profile (MIDP).
Evolving with the object-oriented wireless model
The history of how storage and retrieval systems have evolved
-- from flat file databases to object-oriented database
management systems -- is important for designers of
object-oriented wireless systems, especially when development
funds are tight. Knowing how various models on the evolutionary
path store and retrieve complex data can keep developers from
trudging into a dead end, thereby increasing their design
productivity relative to costs. This article highlights the
evolving storage/retrieval systems and presents a conceptual
tour through a hierarchical structure of database objects,
illuminating the basics of the wireless model and predicting
the coming object-oriented attractions.
Extend J2ME to Wireless Messaging
The objective of wireless messaging is to extend the networking and I/O capabilities of J2ME applications to send and receive messages using the messaging services on GSM networks, like Short Message Wevice (SMS) and Cell Broadcast Service (CBS).
Extending J2EE for Mobile Application Development
In this article, I will explore the fundamental architecture of J2EE and how to capitalize on its flexibility, extensibility, and openness by proposing a new server-side J2EE component model to drastically simplify, standardize, and enhance mobile application development.
Getting Started with Inter-Xlet Communication (IXC)
The Personal Basis Profile (PBP) - and by extension, the Personal Profile (PP) - defines a new application model called the Xlet model, discussed in the J2ME Tech Tip The Xlet Application Model. One appealing feature is that Xlets running on the same device can communicate with each other using inter-Xlet communication, IXC for short.
Integrated Java Technology for End-to-End m-Commerce
This article looks at the advantages of J2ME over conventional Wireless Application Protocol (WAP) technology in wireless-based enterprise and consumer applications, the benefits of extending ...
Introduction to OTA Application Provisioning
The term over-the-air provisioning (OTA) describes the ability to download and install content over a wireless network, typically on demand. In this article we'll go over what OTA is, how it works, and how it affects you, for both MIDP 1.0 and MIDP 2.0. We'll also look at the server impacts - how any web site can be used as a download server, and how the new J2EE Client Provisioning specification looks at a high level. Note that even though this article will concentrate on OTA provisioning of applications, specifically Mobile Information Device Profile (MIDP) applications (MIDlets), some of the concepts covered also apply to the provisioning of other types of content.
Introduction to Wireless Programming with the MID Profile
This article is the first in a series on MIDP application programming. It introduces you to the MIDlet test environment and the MIDP APIs with a very simple MIDlet example.
Invoking JavaServer Pages from MIDlets
In this article, I will show you how MIDlets can interact with JSP-based enterprise systems by walking you through an example. First, however, I will discuss the HttpConnection interface, which can be used for establishing HTTP connections.
J2ME Core Concepts
At the heart of Java 2 Micro Edition (J2ME) are three core concepts: configurations, profiles, and optional packages. You can't write a J2ME application without understanding these concepts, because they determine the features of Java that you can use, which application programming interfaces (APIs) are available, and how your applications are packaged.
J2ME for Home Appliances and Consumer Electronic Devices
The Java 2 Platform, Micro Edition (J2ME) is aimed at the
market for consumer and embedded electronic devices: cellular
telephones, two-way pagers, Personal Digital Assistants (PDAs),
set-top boxes, and other small devices. Since J2ME's release,
hundreds of companies have joined the development effort,
including large corporations such as Motorola, Nokia, Ericsson,
Palm, Samsung, WindRiver, Sharp, Siemens, Sympian, and RIM.
This vote of confidence is not surprising; J2ME provides a
complete set of solutions for creating state-of-the-art
networked applications for small devices. An added attraction
is that the direction J2ME travels is not masked in corporate
secrecy; its development is handled openly, through the Java
Community Process (JCP).
Java Programming on the Sharp Zaurus
This article describes how to program your Zaurus using the
Java programming language. It provides a quick demonstration,
then discusses the details of the Personal Profile and its
close cousin, the PersonalJava platform. The article concludes
by showing how to package a Java application for the Zaurus.
Master J2ME for live data delivery
The biggest challenge in building Java 2 Platform, Micro Edition (J2ME) applications is creating a workable architecture that can span the wide range of wireless devices and protocols. This is especially true of applications that need to push live data to the client. This article explains the key design points for a suggested J2ME framework and gives an example of such a framework hosting two different applications.
MIDlet Packaging with J2ME
This article takes the next logical step: packaging MIDlets. It includes an introduction to the MIDlet Suite, including Java archive and application descriptor files. To put all this into practice, we'll write two short MIDlets and create a JAR and JAD to package these programs. We also look at how using Java packages changes our development process slightly. And, finally, interweaved with the development of the MIDlets in this article, you'll learn how to access MIDlets from a web server.
MIDP Event Handling
This article uses examples to discuss how to handle high-level and low-level MIDP events. The discussion begins with an explanation of callbacks.
Personal Basis Profile vs. Personal Profile: What's the Difference?
For a long while, all the excitement in the Java 2 Platform,
Micro Edition (J2ME) was centered on the Connected Limited
Device Configuration (CLDC), released in final form in May,
2000. The first CLDC-based profile, the Mobile Information
Device Profile (MIDP), followed two months later. MIDP garnered
much interest in the Java community because it defined a new
application model, as well as classes for user interface and
persistence. In other words, it provided a complete environment
for deploying and running interactive applications.
Testing Wireless Java Applications
Wireless applications written in the Java programming language
(wireless Java applications), like all other types of software,
must be tested to ensure functionality and usability under all
working conditions. Testing is even more important in the
wireless world because working conditions vary a lot more than
they do for most software. For example, wireless Java
applications are developed on high-end desktop machines but
deployed on handheld wireless devices with very different
characteristics.
The MIDlets class
You want to adapt the Java Virtual Machine to a low-memory,
resource-constrained, network-connected environment. Well, at
the heart of the K Virtual Machine (KVM) lies a specialized
Java class -- the MIDlet. In this article, Soma Ghosh teaches
you the ins and outs of the MIDlet class, and shows you how to
use it to build your own J2ME apps. After learning the theory
behind the MIDlet, you'll see the technology in action as she
builds a sample program.
The MIDP 2.0 Push Registry
This article will cover the new mechanism called the push
registry, introduced in MIDP 2.0 (JSR 118). You'll start by
finding out what the push registry comprises, see an overall
description of its exposed API, and learn how to use this API
to push-enable your application. The article will end by
covering use of the version of the J2ME Wireless Toolkit that
supports MIDP 2.0 to test your push-enabled MIDP application.
Understanding J2ME Application Models
The management of an application - how it's started and stopped, when it can access system resources, how it discovers its initialization parameters - is shared between the operating system (or other system-level software) and the application itself. The application model defines how an application is managed and how management responsibilities are divided between the application and the underlying system. The Java 2 Platform, Micro Edition (J2ME) currently supports four different application models. This article describes each of them.
What's J2ME?
Java 2 Micro Edition (J2ME) is Sun's version of Java aimed at machines with limited hardware resources such as PDAs, cell phones, and other consumer electronic and embedded devices. J2ME is aimed at machines with as little as 128KB of RAM and with processors a lot less powerful than those used on typical desktop and server machines. J2ME actually consists of a set of profiles. Each profile is defined for a particular type of device -- cell phones, PDAs, microwave ovens, etc. -- and consists of a minimum set of class libraries required for the particular type of device and a specification of a Java virtual machine required to support the device. The virtual machine specified in any profile is not necessarily the same as the virtual machine used in Java 2 Standard Edition (J2SE) and Java 2 Enterprise Edition (J2EE). You'll see that the profile we'll use to develop a Palm OS device application is a subset of the Java Virtual Machine you already know..