Keith Kim’s Blog
Technology, Development, Tech Trends, Tech Team Management
27th
OCT
Intro: Java ME and Palm
Posted by Keith under J2ME, PDA
Java ME or BREW
I’ve only done backend development in Java professionally. More and more, all the inexpensive phones are supporting BREW or Java ME. Since I like Java, and don’t want to go back to C/C++ unless it’s absolutely necessary, I started to look into Java ME instead of BREW. Besides, I have Palm TX that can run Java ME apps well.
Palm Development and Java ME
I’m not too interested in developing cell phone apps. I’m more interested for Palm TX which I own and like it a lot. I’ve tried different development tools for Palm (Since PalmOS 2.0, now it’s PalmOS 5) — but didn’t really find a good tool/dev environment I really liked. The best tool was CodeWarrior for Palm, but code has to be in C/C++. Writing something for Palm is purely hobby, and I’m not willing to spend too much time for debugging; debugging for C/C++ based apps vs. Java, that’s what I mean.
Another reason is, CodeWarrior doesn’t run on Vista which my home PC runs on. And IBM JVM for Palm works very well on Palm TX. All the tools can be downloaded for free too. (CodeWarrior is not free.) And, it worth to invest on learning Java ME environment and API, since it will run on other types of devices like cell phones, PocketPC, etc.
What’s Needed
Basic development environment for JavaME and Palm TX is quite easy. See resources at the bottom of this posting for URLs and instruction:
1. Download Palm TX simulator.
2. Download JVM for Palm.
3. Download Java ME SDK from Sun. (Assuming Java SE SDK is installed already.)
That’s it. And in fact, if target device is not Palm TX, then just download Netbeans with mobility package.
The Palm simulator doesn’t need seting up or installation process. So just double clicking the executable will launch the app. Play around with the Palm simulator. Install PRC, and check what’s in the directory, etc.
Not for old Palm
Don’t try KVM (old JVM from Sun for Palm) with PalmOS 3.0 or up. It’s slow and buggy, at least from my experience. I’m now looking at Java ME on Palm, only because now the hardware (Palm TX) is fast and has large memory, and IBM JVM is very stable. Only advantage of this KVM is that it’s Java ME.
If any Java developer wants to write code in Java for old Palm devices, then use different tools: Waba, SuperWaba, Jump or WabaJump. (I’ll post about these some time.) Of course, they are not Java ME at all. But they work fine from PalmOS 2.x and using WabaJump, it can produce native Palm 68k binary and runs fast — but no multi-threading and GC.
Advantages
By writing Java ME code, it’s faster (you know Java already), and wide range of platforms, and have fun with your Palm. Learning PalmOS API (C/C++) is not a good investment. PalmOS will fade out, either no market for it, or will be replaced by Linux based OS. Well, I’m talking about writing apps for Palm as a hobby, for Java developers. So while having fun writing Java ME code, and run your own cool apps on your palm, at the same time, you now have Java ME on your resume! ;-)
I’m going to post more about using this basic tool sets. I’m currently trying to set up Netbeans 6.0 Beta 2, using its mobility package for Palm apps. If this can be integrated well, then I can take advantage of the IDE’s GUI tools to generate forms, code generation, debugging features of the IDE.
Resources
- Palm TX simulator
1. Go to http://www.palm.com, and click on “developers” link at the top.
2. You have to join PDN (Palm Developer Network) to log in and download.
3. Find “Palm OS” for platform.
4. Click on “SDK for Palm Products on Palm OS Platform”
5. You’ll find Palm T|X simulator. Download RELEASE version. I couldn’t get the Debug version work with JVM:Palm_TX_BEFIGS_Simulator_Release.zip - JVM for Palm, WebSphere Everyplace Micro Environment v5.7.1)
http://www.palm.com/us/support/jvm/download.html - Java ME SDK, Sun Java Wireless Tool Kit
http://java.sun.com/products/sjwtoolkit/download.html

Trackback URL for this post: http://blog.keithkim.com/2007/10/intro-java-me-and-palm/trackback/
Reader's Comments
Leave a Reply
Post Meta
-
October 27, 2007 -
J2ME, PDA -
9 Comments
-
Comments Feed


Greetings Keith,
We have the same interests. Im a Java Developer and wanna make applications for my Palm TX. I enjoy it so much.
Unfortunately I found your post after spend hours putting together all the parts of this puzzle parts (I’ve just started Palm TX download when I found this post)
Did you have any progress since this original integration attempt?
Thank You.
Thanks for visiting my blog. I haven’t played around enough yet, but I did find something I’m going to try and will post soon. What you can check:
[A]
(1) create MIDP project
(2) right mouse click on the project, and select properties.
(3) select “Platform”, then click on “Manage Emulators” and then click on “Add platform”.
(4) select “Custom Java ME MIDP Platform Emulator”
[B]
See this directory. There are emulator definitions.:
C:\Program Files\NetBeans 6.0\mobility8\WTK2.5.2\wtklib\devices
I think I can play around with these ([A] & [B]) — I might be able to do:
1. IBM JVM J9 skin and settings as an emulator.
2. and have ‘build’ or ‘deploy’ definition to build PRC using hte J9’s jadtoprc.exe tool.
I am not sure whether I can configure Netbeans with Palm Simulator+IBM J9 to do full debugging, but I doubt it. If I can just do above two — add Palm TX emulator definition and use Sun’s emulator for development, and ‘build’ to compile into PRC — just that will help a lot.
Please let me know if you successfully integrate the two. I’ll do the same — will post here.
Hi There ! I am trying the EXACTLY same thing with Netbeans 6, J9 + PalmOS Simulator.
Some questions to you:
1. What is the difference betwen Simulator and Emulator (both avaliable on ACCESS website for download) ?
2. Do you know what is the “Garnet Reporter” ? It is also avaliable for download at ACCESS website .. it seems like a debugging tool. I think it is tha “gold-way” to integrate netbeans, simulator and ibm jvm.
If you have good (or bad!?) news, please let me know.
Thank you, Tiago Luz - tiago.luz@w3sys.com.br
Hello Tiago,
As far as I know, emulator is a software “emulates” at the hardware level, simulator is at software level — that how it sounds like from Palm dev documents. (See http://www.access-company.com/developers/downloads/palmostools.html)
So, for OS5, you should use Simulator, and for OS2-OS4, emulator. They’re two different application, and behaves differently. Again, the emulator works just like the real hardware, but simualtor doesn’t.
Sorry — I don’t know anything about “Garnet Reporter.”
I haven’t had the time to work on Netbeans+Palm development integration yet. I’m not even sure when I’ll have time for anything. :-)
Stay tuned.
Hi guys… I have been trying this for a few years now, but the problem I have run into is converting the midlet to a .prc/.pdb for palm and .cab for windows mobile. Then along came superwaba 5.8 It works great. Creates both and is Java like enough that it fits my Java programming brain. It runs inside eclipse too. If any of you get netbeans to do the same thing, from a J2ME app, please advise.
Dean-O
rockie12_us,
Mildelt to .prc, .pdb is easy — you don’t even need netbeans to do that. Just download JVM for Palm, WebSphere Everyplace Micro Environment v5.7.1, and you’ll find the executables in the package, along with the sample codes.
It was good finding the artical here but I still not got the palm OS simulator
help me or send link to me
anil.sahajwani@yahoo.co.in
Anil, you have to register with PDN in order to download it.
Dear Keith,
I am into development of one palm tx application and it’s basic features will be, to develope a word processor over Palm TX with all security encryptions.
Can you please guide me with this ?
Hoping for your favorable reply on same !! As Palm has stopped supporting this old palm tx platform , i am facing real difficulties.
Regards,
Pranav