From what I can tell, Sun's free J2ME MIDP implementation only runs on a small subset of devices. It only runs on 68k-based devices with PalmOS 3.5. It won't work on older devices, and I'm not sure if it will work with PalmOS 4.x, but I know it won't work with 5.x. Also, they aren't supporting this anymore.
For devices with PalmOS 5.x, the J2ME implementation of choice is Websphere Micro Environment. Unfortunately, it doesn't run on the older 68k-based devices. And although it is fairly inexpensive, it is not free.
So, it would appear that there is no single J2ME solution that covers all Palm devices.
I am getting a Palm Treo 700p and am thinking I'd like to do Java with it. (I previously did a little C programming on my Sony Clie, so I'm not totally new to PalmOS development.)
Of course, if you want to write games that will work on both a Palm device and also a regular java-enabled cell phone, there's no getting away from using J2ME. However, if your software is targeted only for PDA's, SuperWaba seems like a reasonable choice. (As soon as you start accessing PDA features like the address book, you're probably talking about something that won't run on a regular cell phone.)
So, I'm looking at SuperWaba in comparison to what's out there for J2ME. It's not J2ME compatible, but it is Java compatible. You can use Sun's compilers with it, and you can use Eclipse or some other free
IDE. It's totally free to the programmer and the user (unless you want to purchase support). It works with PalmOS 3.x-5.x, and also works with Pocket PC. So, you'd get a pretty wide audience. And you can package the VM with your software so the user doesn't have to do a separate download.