Skip to main content

Wanna Be

Posted by editor on September 22, 2008 at 7:17 AM PDT

Mac and Solaris ME development getting more practical?

It's long been a thorn in the side of some ME developers that the Wireless Toolkit (WTK) originally shipped with Windows-only native bits, only adding Linux over the last few years. Other operating systems -- most obviously Mac, but also Solaris, BSD, Linux for non-x86 architectures, etc. -- were left on the outside looking in. A lot of people thought this was an absurd limitation, as Java SE should surely be powerful enough to provide any needed tooling for ME and even emulation of ME devices.

While the WTK itself doesn't show any intention of eliminating its native code dependencies, the "just do it with Java SE" crowd has worked out all-Java alternatives, unblocking ME development on other platforms. Terrence Barr points out this development in his blog, Developing mobility apps on Mac OS X and Solaris:

Increasingly, people are also going the route of using Java ME emulators written in Java SE to provide mobility functionality on platforms that otherwise lack WTK support, such as OS X and Solaris. Some examples are mpowerplayer and microemulator. While this approach is not perfect (in particular, Java SE-based emulators tend to lack tight platform integration, some advanced tools such as monitoring, and some of the latest JSRs features) it does allow the Mac OS user to run and develop Java ME applications directly on OS X.

That would seem to solve only part of the problem, as the alternative-OS user is still cut out of the WTK toolchain, but Terrence says there are developments on that front too.

Karol Harezlak from the NetBeans team has built a plug-in for microemulator that allows Java ME application development within NetBeans 6 in a fashion similar to the original Mobility plug-in under Windows and Linux. Currently there are still a couple of limitations with this in respect to the microemulator functionality (MIDP CustomItem is not completely implemented and there are a couple of issues with some JSR implementations). But it's a great start and since microemulator is an open source project I expect the community to continue to address the remaining issues over time.

Also in today's Weblogs, Rémi Forax reminds of this week's mini-conference for the dynamic-languages-on-the-JVM crowd, in Meet me at JVM Language Summit. He notes, "I will be at JVM Language Summit as a speaker to talk about JSR 292 backport."

Finally, Binod offers the tutorial MD5 Authentication example for converged applications. "This entry explains how to configure JDBC Realm for converged applications. "

In Java Today,

The Aquarium has posted details about upcoming GlassFish Webinars. "Online-based Webinars are working pretty well. We will continue to fine-tune and improve the mechanics, but we are already lining up a full schedule. The next two presentations are: • Sep 25th, 2008 - Grizzly and Grizzly 2.0, JFA and Aleksei, Tentative • Oct 2nd, 2008 - EJB 3.1 Overview, Ken Saks, Confirmed. Full schedule details are at GlassFish TV Schedule. Non-Sun presenters are very welcome. PS. Stay tuned for other online chats around our GlassFish v3 Prelude launch next month."

In a new SDN article, Enrique Ortiz takes a look at Using JavaScript Object Notation (JSON) in Java ME for Data Interchange. "In mobile applications, developers typically rely on home-grown data-interchange formats or on the Extensible Markup Language (XML). [...] These two approaches also have disadvantages, one being proprietary in nature, non-standard, and potentially non-interoperable, while the other one could be considered too heavy and verbose for data representation, again this is especially true for mobile and embedded applications. An alternative to consider is the JavaScript Object Notation or JSON, a lightweight data-interchange format. In this article I introduce JSON for data interchange in the Java Platform, Micro Edition (Java ME)"

InfoQ has posted a presentation from Brian Goetz called Concurrency: Past and Present. "In this presentation from QCon London 2008, Brian Goetz discusses the difficulties of creating multithreaded programs correctly, incorrect synchronization, race conditions, deadlock, Software Transactional Memory, the history of concurrency, alternatives to threads, Erlang, Scala, and recommendations for concurrency in Java. Watch Concurrency: Past and Present (60 minutes)."

In today's Forums, Qunhuan Mei suggests that the LWUIT compatibility matrix for mobile devices should include all results, not just successes, making this point in the follow-up DeviceDB - to include failed phones etc? "The DeviceDB is very helpful to see what devices have been successfully tested for LWUIT app. It might also be useful to have a second list to show what devices (excluding MIDP 1.0 and CLDC 1.0) have failed to run LWUIT app, and may be a third list to show pending problem phones (e.g. Nokia N95-8G)."

When is an applet not an applet anymore? Maybe when it's dragged out of the browser. kazssym wonders if Java Web Start does not call stop() for dragged applets? "I am writing a plugin that saves applet data on stop() with JNLP PersistenceService and restores it on next run. When I run it in a browser, it saves applet data successfully. But when I run it from the desktop after I drag it from the browser window and make a desktop shortcut, it does not save at all. I managed to run it with a debugger and found that stop() was not called when I close its window. I may be wrong but at least a break point at the beginning of stop() was not hit."

Does <applet> go away in HTML5? In
Re: Embeddeding applets in HTML5, kbr writes, "thanks for pointing this out and trying to work around the problem. I hadn't been aware that the applet tag had actually been obsoleted in HTML 5. We need to fix the IE port of the Java Plug-In to support the specification of the application/x-java-applet MIME type in the object tag. Currently there are assumptions that the IE-specific CLSID mechanism is always being used. I've filed 6750726 to track this issue and marked it with the highest priority. FWIW, I've also filed a bug with the W3C asking them to please not break the applet tag, but instead to leave it deprecated.

Current and upcoming Java

Registered users can submit event listings for the href=""> Events Page using our href="">events submission form.
All submissions go through an editorial review before being posted to the

Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of it will be
archived along with other past issues in the href=""> Archive.

Mac and Solaris ME development getting more practical?