Disharmony Over Harmony in the Java Community

Apache Software Foundation loses roadmap vote, may walk from official Java body

The Register is reporting today that the Apache Software Foundation seems to have lost its bid to have the Java Community Process (JCP) vote down the roadmaps for Java 7 and 8, thus creating a situation where, based on earlier statements from the ASF, may see the open source organization walking out from the Java governing board.

According to the UK-based tech site, only Apache and Google voted "no" on the roadmaps among the 16 representative members of the JCP that typically put their stamp of approval on all of the new updates of Java since Sun Microsystems open sourced Java.

The crux of the ASF's problem stems from their continued objections to how Oracle, as the sustaining member of the JCP, will not grant a test compatibility kit (TCK) license to the ASF's own Java implementation, Project Harmony. Without the TCK, Harmony cannot be tested and certified against the Java standard. This effectively reduces the potential user base for Harmony, which, the ASF claims, is likely the reason behind Sun's insertion of the language.

This is not the first time the ASF has voted against the Java roadmaps. In March of 2009, the ASF voted an outright "no," to protest the inclusion of then-new incompatible language inserted by Sun into the TCK licenses. Prior to that, the ASF has long had issues with the TCK licensing, but they have become increasingly disenfranchised and vocal against the policies of the Java sustainer--first Sun, now Oracle.

In 2009, the ASF's unqualified "no" vote against approving the spec marked an escalation in the community's response to Sun's management of the Java specification. This year, the ASF's reported vote, along with Google's, is supposedly qualified--The Register is reporting that both organizations had no issues with the technical aspects of the Java 7 and 8 implementation, just the licensing issues.

It makes a certain sense that Oracle might feel protectionist about letting Harmony be an "official" part of Java, since Oracle is currently suing Google over alleged infringing code in Google's Dalvik virtual machine. Dalvik, which Google maintains was a white-room creation, uses some Harmony code, so you you can see why Oracle would be touchy about it.

But this is not just about the Oracle/Google lawsuit, and the ASF knows it. Looking at the timing of the TCK licensing problems, Sun was hassling Project Harmony long before Oracle came along. Plus, Oracle isn't just withholding the TCK license. Last month, Apple joined the OpenJDK project--Oracle's alternative to Harmony--and the month before that, Oracle had courted IBM to have them join OpenJDK, too.

The increasing frustration felt by the ASF over what it perceives as a failure on the part of Oracle to properly uphold the rules of the JCP and to try to politically isolate Harmony in the community led the open source organization to outright threaten to leave the JCP last month, should Oracle win the roadmap vote:

"In light of Oracle Corporation failing to uphold their responsibilities as a Specification Lead under the JSPA and breaking their signed covenants with the Apache Software Foundation that are the conditions under which we agreed to participate in the JCP, we call upon the Executive Committee of the JCP to continue its clear, strong and public support for Java as an open specification ecosystem that is a level playing field for participants in order to ensure that anyone -- any individual or commercial, academic or non-profit entity--is able to implement and distribute Java specifications under terms of their choice. Specifically, we encourage the other members of the JCP EC to continue with their support of our position regarding Oracle, and vote accordingly on the upcoming Java SE 7 vote.

"The ASF will terminate its relationship with the JCP if our rights as implementers of Java specifications are not upheld by the JCP Executive Committee to the limits of the EC's ability."

That's a pretty clear statement, and now that Oracle has indeed won the latest roadmap vote, now it's time to see if the ASF will make good on its threat. There's no reason to think otherwise, and now it becomes a game of chicken: will Oracle act to prevent a walkout from the JCP and thus set up a potential Java fragmentation, or will it let the ASF walk with little regard of the consequences?

Based on recent history, it seems likely Oracle will try to simply wash its hands of the whole thing, relying on its supreme confidence that it can handle anything an open source community might do. The most recent example is Oracle's stiff-arming the Hudson project, when the developers of the continuous integration platform for Java tried to relocate its code from the repositories, citing ongoing technical problems with were promptly told by Oracle that any such move would be considered a fork of Hudson.

That confidence could be misplaced this time. With no disrespect to Hudson,, OpenSolaris, or any other open source project that Oracle has fumbled since acquiring Sun, this is Java we're talking about. Java is one acquired piece of Sun technology that has a chance to create some revenue for Oracle and is Oracle's best chance to get into the exploding mobile market. Google and Apple are dominating that market now, and a fragmented Java community would mean weaker Java flavors on all sides, something Oracle absolutely doesn't need when going head-to-head with Android and iOS.

The smart play for Oracle would be to make an honest effort to smooth out the difference with the ASF and demonstrate that for once they have the community's interests at heart over their own. But with Oracle and Google currently at legal odds with each other and Harmony in the middle, that doesn't seem likely.

ITWorld DealPost: The best in tech deals and discounts.
Shop Tech Products at Amazon