So there has been some noise from Sun about how Google AppEngine is evil because it’s not supporting the complete set of classes in the JRE. I’m sorry Sun – I’m a Java programmer, and I think that argument is shit. I’d much prefer a partial Java implementation with well defined limitations than PHP, or Python or Ruby.
AFAIK, no one has posted a list of classes missing. I can’t be bothered doing that either, but I did manually take a look at package level. Here’s it looks like GAE/J is missing:
java.applet
java.awt.*
javax.activation
javax.imageio.*
javax.jws.*
javax.management.*
javax.naming.*
javax.net.*
javax.print.*
javax.rmi.*
javax.sound.*
javax.swing.*
javax.tools
javax.xml.bind.*
javax.xml.crypto.*
javax.xml.soap
javax.xml.stream.*
javax.xml.ws
org.ietf.jgss
org.omg.*
From that list, I’d like to see javax.activation, javax.management and the remaining javax.xml.* and maybe javax.tools packages supported. The rest really don’t seem at all relevant to the AppEngine environment.
I too must call BS on the assertion that this is “forking” Java. I believe that JSR 316 suggests this very thing with the introduction of profiles:
“The reach of the Java EE platform has become so broad that it has lost some of its original focus. To refocus the Java EE platform on particular classes of developers and applications, we propose the introduction of Java EE platform Profiles. Profiles will reference the Java EE platform, as defined by the JCP process, and may include a subset of Java EE platform technologies, additional JCP technologies not part of the base Java EE platform, or both. In addition to defining the base Java EE platform, this specification will define the rules for referencing Java EE platform technologies in Java EE Profiles.
This expert group will also define the first version of a Java EE Web Profile – a subset of the Java EE platform targeted at web application development. This profile will provide a more gentle introduction to the Java EE platform, providing only those technologies needed by most web application developers, without the enterprise technologies that sometimes confuse such developers. ”
So – why not a Google App Engine Profile?
Perhaps instead of spreading rumors and innuendo you can port the URL that mentions the noise you indicate has been heard.
That would certainly provide your post more credibility.
Do you have a reference to the “noise” that Sun is creating? I haven’t heard anything and I’d be interested to see what they’re saying.
Sorry – I assumed everyone knew what I was talking about: See http://www.itworld.com/open-source/66329/suns-open-source-boss-slams-app-engines-java-support and http://developers.slashdot.org/article.pl?sid=09/04/13/2017246