用WebSphere Studio Device Developer开发一个基于DB2 Everyplace V8.1的Palm OS应用
简介
本文描述了如何使用WebSphere Studio Device Developer (WSDD)为掌上设备开发DB2 Everyplace 应用程序。DB2 Everyplace产品自己本身拥有一项快速开发工具,即DB2 Everyplace Mobile Application Builder (MAB)。 它是一个能被用来定制移动应用程序的视觉创作工具,所支持的移动平台包括基于Palm OS 以及Java Virtual Machine的设备。MAB作为DB2 Everyplace Software Development Kit (软件开发工具包)的一部分,无须额外付费就可以免费下载。
除了使用MAB作为开发工具外,本文还介绍了另一个开发环境IBM WSDD,它可以代替MAB 为掌上设备开发基于Java 的DB2 Everyplace 应用程序。
本文还讲述了如何使用WSDD来建立MIDP应用程序和可在DB2 Everyplace 关系型数据库(VNURSE sample)访问数据 的MIDlet,以及如何在Palm OS设备上配置MIDlet。
DB2 Everyplace V8.1概述
DB2 Everyplace是移动设备上的关系型数据库。 它由三个主要部分组成: the DB2 Everyplace 关系型数据库, DB2 Everyplace Sync 服务器以及DB2 Everyplace Mobile Application Builder。
有了DB2 Everyplace,你可以通过使用Java Database Connectivity (JDBC)直接访问DB2 Everyplace数据库中的关系型数据在普及设备上开发Java应用程序,在DB2 Everyplace数据库与企业关系型数据库之间双向同步传递数据。本文所提供的应用程序举例仅显示了如何编辑一个MIDlet 来访问DB2 Everyplace的关系型数据 。不久的将来我们会向您展示如何使用含有isync4j的 sync API 开发MIDlet。
MIDP的 概念
MIDP 是由Mobile Information Profile Expert Group (MIDPEG) JSR-000037 Mobile Information Device Profile (MIDP)产生的一个J2ME Profile。它已被证明为移动信息设备(含J2ME的移动电话和一定范围的 PDA)上的主要Java编程模型。MIDP 的主机配置采用CLDC。
MIDP for Palm OS 是基于Palm OS手提设备上的 JavaTM 运行时间环境 。它使得Palm OS的用户能够运行与其它MIDP兼容设备(例如移动电话和寻呼机)相同的Java应用程序。MIDP 遵守Palm OS 用户界面协议,将用户的培训需求降至最低。WSDD为MIDP for Palm OS 提供了开发环境。
现在有两种MIDP API,分别叫做高层API和低层API。高层API是为需要在很多设备(例如不同屏幕大小和输入方法)间移植的应用程序设计的,为了实现移植,它具备高度的可取性。低层API 让您可以完全访问设备屏幕、键盘以及指示器活动(改善其外观和感觉),但牺牲了移植性。
普通的 MIDlet 包括三个主要方法:startApp(), pauseApp()和 destroyApp(),您将在本文提供的源代码中见到。
使用WSDD 开发MIDP应用程序的过程
建立Java源代码
建立开发过程,确定设备环境
编辑应用程序
将应用程序打包至特定目标下的一个 JXE 或 JAR文件
启用
开始使用WSDD为Palm OS设备开发 DB2 Everyplace MIDlet
WebSphere Studio Device Developer的使用:
WebSphere Studio Device Developer 让您可以:
建立 Device Developer 应用程序并在本地运行
建立MIDlet Suites并在本地(MIDlet 模仿器)运行
建立架构并在嵌入式和手提式目标操作系统(例如Palm OS 和 Pocket PC)中启用
在不同目标设备上启用并调试应用程序。
WebSphere Studio Device Developer 包含以下几项组件:
Device Developer 工作台组件
建立和启用编码工作台组件
MIDP工作台组件
MicroAnalyzer 工作台组件
C Development Tooling (CDT) 工作台组件
Device Developer工作台组件包括J9 运行环境 (基于 JDK 1.3 规范),开发环境(Window或Linux)工具包,以及在应用程序预先链接Class所用到的SmartLinker工具。WSDD还为诸如以下这些不同操作系统和处理器提供运行时间和工具包:
Palm OS
Pocket PC
Red Hat Linux
Windows 32-bit 平台
必备条件
在进行开发之前,您需要安装和调试好WSDD、Palm OS 模仿器 和DB2 Everyplace V8.1 SDK。然后根据以下步骤建立开发环境。
安装WSDD的评估版
从以下网址下载WSDD http://www.embedded.oti.com/wsdd/.
如果您的机器上已安装了WSAD ,您可以在另一个目录下安装WSDD 。
安装 DB2 Everyplace V8.1 SDK
DB2 Everyplace V8.1 SDK可从IBM网站免费下载。软件包包含了DB2 Everyplace数据库引擎 的评估拷贝。
您可以选择在Windows 目录下安装DB2 Everyplace V8.1 SDK ,但本文假设您将其安装在"C:\DB2EveryPlaceSDK"
安装Palm OS Emulator (POSE)和ROM 文件
这里介绍POSE的安装步骤。在安装完DB2 Everyplace V8.1 SDK后,您可以在DB2 Everyplace SDK产品目录中找到Palm模仿器文件 (emulator-win.zip), install_directory\SDK\ApplicationBuilder\Toolkits\Palm Development\MAB_prereqs。 将文件解包至所选目录 (例如. c:\PalmDev), 然后解包MAB_prereqs 目录下的pilrc.zip至目标目录c:\PalmDev。pilrc 资源编辑器 (pilrc.exe) 和 Palm 模仿器(emulator.exe) 将在建立Palm OS设备上的 WSDD 环境时使用。
您可在以下网址下载Palm developer 区域最新发布的Palm OS Emulator : http://www.palmos.com/dev
在解包 emulator-win.zip 文件后,您在目标目录下会发现以下文件。
文件名 | 描述 |
Emulator.exe | Palm OS Emulator 主要可执行文件 |
Emulator_Profile.exe | Palm OS Emulator新增 profiling 设施 |
ROM Transfer.prc | Palm OS 应用程序,用来 将 ROM图像从手提设备转换到桌面 |
Docs (目录) | Palm OS Emulator 文档,包括: UsingPalmOSEmulator.pdf |
下载ROM image
除了Palm OS Emulator 可执行文件,您还需要 ROM image来运行Palm OS Emulator。ROM image包括Palm OS特定版本的所有代码。您可以从以下网址的Palm Resource Pavilion下载ROM image(http://www.palmos.com/dev),您也可以让Palm OS 模仿器从放在手提吊架中并连接桌面电脑的手提设备下载ROM image(请参照用户手册中的指示:欲知详情使用Palm OS Emulator)。本文讨论如何从Palm Resource Pavilion下载ROM image 文件。
Resource Pavilion 是为Palm OS Developer Program注册会员提供的区域。您可以在开发者网站找到加入Palm OS Developer Program的说明。
建立 Palm OS Emulator
在c:\PalmDev双击emulator.exe,启动模仿器。在跳出的窗口选择New 来启动一个新的 emulator session。在New Session窗口,选择你从Palm Resource Pavilion下载 ROM 文件的位置。
完成以后将emulator session保存到选择目录,例如 c:\PalmDev\run1.psf
在Palm Emulator上手动安装DB2 Everyplace V8.1 及其样例 (VNURSE) 数据库
双击c:\PalmDev目录下的run1.psf,取出你保存的 emulator session
右击emulator 并选择Install Application\Database > Other
从 DB2 Everyplace SDK目录选择以下DB2 Everyplace 文件:
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\DB2eCat.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\DB2eCLI.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\DB2eComp.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\DB2eDMS.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\DB2eRunTime.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\Samples\en_US\SampleCLP.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\QBE\QBE\en_US\QBE.prc
C:\DB2EveryPlaceSDK\Clients\PalmOS\database\Samples\en_US\NurseInit\NurseInit.prc
文件名 | 描述 |
DB2eCat.prc | DB2 Everyplace 数据库引擎 |
DB2eCLI.prc | DB2 Everyplace 数据库引擎 |
DB2eComp.prc | DB2 Everyplace 数据库引擎 |
DB2eRunTime.prc | DB2 Everyplace 数据库引擎 |
DB2eDMS.prc | DB2 Everyplace 数据库引擎 |
SampleCLP.prc | DB2 Everyplace Command Line Processor |
QBE.prc | Query-by-Example |
NurseInit.prc | Visiting Nurse 初始程序 |
另一种方法是使用DB2 Everyplace V8.1提供的Install on Mobile Devices 工具安装以上文件。安装步骤将在下一部分介绍。
使用Install on Mobile Devices 工具在Palm Device上安装DB2 Everyplace V8.1 及其样例 (VNURSE) 数据库
注:如果已进行上述"在Palm Emulator上手动安装DB2 Everyplace V8.1 及其样例 (VNURSE) 数据库",您可以跳过这个步骤直接进入下一个步骤:"建立一个Device Developer项目"。以下的流程虽然使用了模拟器,但仍能真实反映您第一次在手提设备上使用Palm Desktop HotSync功能安装DB2 Everyplace代码时所经历的实际步骤。
在安装 DB2 Everyplace库和样例程序之前,您需要在emulated session中启动 HotSync 支持。在未连接网络状态下,按照如下