How to make Java suck? Ask Sun!

Whenever I talk about Flex and other Adobe stuff with colleagues and geeks I know, sometimes I get the annoyed answer like “Adobe is evil, it’s proprietary code, there’s a governance issue.” Of course the implicit assumption is that Sun Microsystems does it so much better. Well, let me tell you a story about Sun Microsystems’ tremendous governance.

At this time, I’m trying to put together a prototype for a mobile service of mine, using Java Mobile Edition and several of its optional API’s. One of those API’s is core to my application since it is what I use to connect to my backend server: JSR172, aka Web Services API. When I started this prototype, I knew that using optional API’s is risky, because not all cell phones out there support all of them. But it’s a prototype, I just want to make sure it works on my own super-phone (Nokia N95 8GB), and I’ll try to find a solution later for other phones.

So I ordered my very expensive phone and while I was waiting for it, I started working on my J2ME application. I tested it under Sun’s reference implementation Wireless ToolKit and everything worked just great. Then I downloaded the Nokia toolkit and there I had an issue, something cryptic like “(1) Missing end tag for body or envelope”. I thought it had to be an issue related to the beta version of the toolkit, so when I got my phone, I deployed it there and boom: same error. No way to connect to my backend server! Then I started to get nervous. I left a message on forum.nokia.com, and nobody seems to be able to give me serious options.

So now I’m stuck with an application that works great on Sun’s reference implementation, but nobody uses their implementation on their phones. It could be that Nokia did a bad job reimplementing the specification. But if Sun had done things right, there would be a comprehensive compatibility test that would enforce all the implementations to work the same. Or at least, there would be the option to replace the phone implementation with theirs. But wait, outside of the WTK, the WSA page has not been updated since June 2005! Come on!

No wonder why Google Android and Nokia Qtopia are working on alternatives…

4 thoughts on “How to make Java suck? Ask Sun!”

  1. lol, when i read the topic i thought you were talking about sun certification and I never knew that java language was so retarded before i started learning for that certification.
    However sun is master of stupid decisions, they push hard netbeans however they deeply believe that real developer should never use any IDE (it makes you weak).

  2. Salut Sébastien,

    Je vais écrire le message en anglais, ça sera mieux pour la compréhension de tout le monde.

    I’ve apparently the same problem as you, with Nokia’s JSR-172 implementation. My J2ME software works fine with WTK, as well as with old Nokia cell phones which don’t have their own implementation of the JSR (thus with Sun’s one).

    But with Nokia E65 and N95, which have this Nokia’s implementation, communication with the web service don’t work: “(1) Missing end tag for body or envelope”…

    Did you find a solution to turnaround this problem?

  3. Im sitting with the same issue right now and Im amazed how bad Java Me works, no wonder Android didn’t want to use J2ME.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.