A few weeks ago the Apache Software Foundation (ASF) telegraphed its intentions to step down from the Java Community Process (JCP) Executive Committee, if the company refused to provide a TCK license to Apache as promised. Guess what? Oracle has failed to come through, and Apache is packing its bags.

Here's a snippet from the ASF's official statement:

The recent Java SE 7 vote was the last chance for the JCP EC to demonstrate that the EC has any intent to defend the JCP as an open specification process, and demonstrate that the letter and spirit of the law matter. To sum up the issues at stake in the vote, we believe that while continuing to fail to uphold their responsibilities under the JSPA, Oracle provided the EC with a Java SE 7 specification request and license that are self-contradictory, severely restrict distribution of independent implementations of the spec, and most importantly, prohibit the distribution of independent open source implementations of the spec. Oracle has refused to answer any reasonable and responsible questions from the EC regarding these problems. In the phrase "fail to uphold their responsibilities under the JSPA", we are referring to Oracle's refusal to provide the ASF's Harmony project with a TCK license for Java SE that complies with Oracle's obligations under the JSPA as well as public promises made to the Java community by officers of Sun Microsystems (recently acquired by Oracle.) This breach of the JSPA was begun by Sun Microsystems in August of 2006 and is a policy that Oracle explicitly continues today. For more information on this dispute, see our open letter to Sun Microsystems. This vote was the only real power the Executive Committee has as the governing body of the Java specification ecosystem, and as we indicated previously we were looking for the EC to protect the rights of implementers to the degree they are able, as well as preserve the integrity of the JCP licensing structure by ensuring that JCP specifications are able to be freely implemented and distributed. We don't believe this is an unreasonable position - it should be noted that the majority of the EC members, including Oracle, have publicly stated that restrictions on distribution such as those found in the Java SE 7 license have no place in the JCP - and two distinguished individual members of the EC, Doug Lea and Tim Peierls, both have resigned in protest over the same issue.

The statement concludes saying that the EC has failed to stand up for the rights of those implementing the standards, and that the licensing structure is "broken." Apache has also — rightly — concluded that Java should be treated as proprietary and that Oracle's interests override the interests of the larger community.

Whether this has any effect remains to be seen. Apache made its intentions clear, and yet the EC went ahead and voted for the JSR for the Java SE 7 anyway. The folks on the EC that voted in favor of the Java SE 7 should be ashamed for failing to stand up to Oracle and trying to drive Java towards a real open community process. Good on Doug Lea and Tim Peierls, though, for stepping down over this issue rather than continuing to serve as a rubber stamp for Oracle. I think Peierls said it best:

Several of the other EC members expressed their own disappointment while voting Yes. I'm reasonably certain that the bulk of the Yes votes were due to contractual obligations rather than strongly-held principles. It's not that I'm shocked, shocked that votes can be bought, but it finally made it clear to me that my vote was worthless. Add to that Oracle's expressed intent to proceed with the SE7/8 JSRs whatever the outcome of the vote, and one can only conclude that the SE/EE EC is never going to be more than a rubber stamp for Oracle. (The belligerent tone with which this message was delivered does not come across in the public minutes, but it was loud and clear over my phone connection.)

The question now is what's next for Apache Harmony and other technologies that are Java-derived, given Oracle's penchant for lawsuits. If nothing else, Oracle is doing a great job of showing just how dangerous it can be when a single company is the sole control point for an open project.