Embedded Java is in billions of places most people don’t every realize. E-Book readers, VOIP phones, printers/copiers, Blu-ray players, TVs and set-top boxes, embedded servers, network equipment, smart meters, kiosks … and, of course, mobile devices and smart cards.
Oracle is building on the success of embedded Java with new binary products targeting popular embedded platforms and operating systems – enabling developers to create embedded Java solutions even quicker and at lower cost.
Two days ago, Oracle released the first version of a new product called the Oracle Java ME Embedded Client. The Oracle Java ME Embedded Client is a full-featured, highly optimized, binary Java runtime (as well as an emulation environment) that builds on Oracle’s industry-leading CDC (Connected Device Configuration) stack which has been successfully deployed in millions of devices across the globe – but now, in as easy-to-use binary product.
A short list of high-level features includes:
- High-performance, reliable, low-footprint Java CDC VM and runtime
- Implements CDC, FP, PBP, RMI, JDBC, and Web Services
- Supports a number of runtime features, optimizations, and tuning and deployment options
- Aligned with global standards such as GEM MHP, BD-J, tru2way, OSGi, and Ginga-J
- Available for Linux on ARMv5, ARMv6/7, MIPS, and PPC (all headless)
- SDK desktop emulation environment for Linux-x86 and Windows-x86
- Ready-to-run binaries for popular platforms such as the BeagleBoard (I can also confirm it runs fine on the GuruPlug)
For more information, see system requirements and FAQ, the documentation set (install guide, release notes, config guide), and download the binaries here.
Getting started with the Oracle Java ME Embedded Client in extremely easy. Check out these links:
- Installing Linux on an ARM-based BeagleBoard
- Getting Started with the Oracle Java ME Embedded Client
- Running a Small Server with the Oracle Java ME Embedded Client
I am also currently working on brand-bew webinar titled “Building a real-world embedded Java sensor/control solution in 60 minutes” – so watch this space.
Happy experimenting! Cheers,
— Terrence
5 comments
Comments feed for this article
06/01/2011 at 03:11
Fernando Cassia
Great News!.
Can you elaborate on the Ginga-J part? Has it been tested on any set top box that sells in Brazil?.
FC
06/02/2011 at 09:15
terrencebarr
Fernando,
The Oracle Java ME Embedded Client is the basis of a number of embedded products in the entertainment/TV space, including Ginga-J-based reference implementations.
— Terrence
06/06/2011 at 22:06
Davide
Hi Terrence, thanks for informing us about interesting news from oracle mobile planet.
Is it planned to make a guide on how to port JavaME MIDP CDLC apps to JavaME CDC devices?
06/15/2011 at 06:46
Hank Bruning
Terrence,
Does Java ME Embedded have any access to an I2C Bus or IPMI ? I’d like to read the IPMI sensors for CPU temperature, voltages and fan speeds. Our JBlade Retuli Java library can process all the IPMI information but I need to way to read from the physical I2C bus from Java. Any ideas ?
Hank
08/12/2011 at 10:20
terrencebarr
Hank,
Sorry for the slow reply. You would probably want to use JSR-256 (Java Sensor API) for that. You should check if your particular Java platform has a JSR-256 implementation available. If yes, that’s the easiest option. If not, other options include serial access to your I/O through the javax.comm API, access via streams through the OS dev file, or developing a small native wrapper library.
Best,
— Terrence