Sun Microsystems has open sourced its Java toolkit for building mobile applications just as the role Java plays on handsets comes into question.
The company has released the Light-Weight UI Toolkit (LWUIT) under a GPLv2 license with a classpath exception - for binary linking with an application - as an incubator project to Java.net. Fixes to LWUIT from Sun will be posted to the repository.
Announced in April and based on Java Mobile Edition, LWUIT includes a range of graphical components, themes, fonts, animation and transition effects, touch-screen support, and Scalable Vector Graphic image support using Java Specification Request (JSR) 226.
Mobile has long been one of Java's strongest markets running on billions of devices. That's been down to two facts: its cross-platform capabilities that allow for a degree of application portability, and the fact that - unlike Windows - no single vendor dominates the technology, something that pleases the powerful handset and service provider industry.
Java's place in the sun looks to be challenged by Linux and open source. Both the Linux Mobile Foundation and Google with Android have turned to Linux as an answer to their prayers on software portability across handsets and freedom from the roadmap and marketing dictates of a single vendor. LiMo has promised more than half of its smart-phone platform will be open source by release four.
The Symbian Foundation, meanwhile, has promised to open source its platform's code for broader adoption.
And in its march towards iPhone market share, Apple has rejected Java so it can retain control of the handset's architecture and future roadmap.
When Sun first began talking up LWUIT in April, it wasn't clear how the Java stack would be released or licensed. GPLv2, though, seems an attempt to get it out there as broadly as possible and running on LiMo and Android devices. The iPhone is another matter.
Sun LWUIT developer Shai Almog appealed to developers to help evangelize LWUIT. "The best product in the world is worthless without its users, they make or break the product," he blogged. "One of the ways in which you can help us is by advocating and informing other developers about LWUIT, this is something we can't do on our own."®