It's A Java Embedded World
While you still may not be able to run Java on iOS devices, or pure Java on Android devices yet, you can still run Java on billions of embedded devices. This includes feature phones (flip phones and others not considered smart phones, of which there are billions in the world), embedded controllers (i.e., RFID readers, kiosks, and so on), and small footprint computers called plug computers, such as the ones sold by Global Scale Technologies.
I have a Global Scale GuruPlug Server, which is a low-power single or multi-core ARM device running at 1.2GHtz, with 512MB RAM, 512MB Flash, gigabit Ethernet, Wifi, Bluetooth, USB2.0, and Debian Linux all in a shell about 3 or 4 inches square. You can see from the image below that it's about the size of my coffee mug.
Best of all, Oracle has a version of Java SE Embedded that you can download and install in binary form in minutes. If you have one of these plug computers (named as such because they have a plug on the side and can be plugged into an outlet directly), or another ARM-based device, visit Oracle's Java SE Embedded download page and locate the correct package to install.
For the GuruPlug, I downloaded the JavaSE 7 Embedded Headless Server Compiler version with virtual floating point support. Simply FTP to the device's IP address from my Mac, upload the tar-ball, and then un-TAR it in an SSH session. To test the server-ness of this device, install a JMS provider and test queue application, and it will run with no change or r-compile needed (thanks Java). See the screen shot of my SSH session from my Mac below.

Embedded Java: First-Class Citizen
A lot was made of the recent release of Java SE 7 update 6, and how it was the first full Java version available from Oracle for Mac OS X as well as other platforms. However, if you look at the java.oracle.com main Java page, you'll see that one of download links includes the embedded version of Java SE 7 update 6 as well. I think this is just as exciting. Embedded Java is a first-class citizen, available for download for many embedded devices in binary form.
In the end, this means that the same set of tools and skills that millions of developers globally use to build server, web, and client Java software is available to the embedded world as well. And, with Oracle's HotSpot JVM included in this embedded platform, the resulting Java code will be machine compiled at runtime to perform at comparable speeds as C applications. It's a win-win.
Happy Coding!
-EJB

