Thursday, December 9, 2010

BREAKING: The ASF Resigns From the JCP Executive Committee

It's not that often that we associate Java with "agile" (not that you can't be agile with Java, mind you!)... But the past two years we've been seeing some very major "breaking news" type events around the Java ecosystem. Not only the release of Java EE 6 specification, but also the acquisition of Sun to Oracle and the chaos that resulted...

The ASF Resigns From the JCP Executive Committee

The Apache Software Foundation has resigned its seat on the Java SE/EE Executive Committee.  Apache has served on the EC for the past 10 years, winning the JCP "Member of the Year" award 4 times, and recently was ratified for another term with support from 95% of the voting community.  Further, the project communities of the ASF, home to Apache Tomcat, Ant, Xerces, Geronimo, Velocity and nearly a 100 mainstay java components have implemented countless JSRs and serve on and contribute to many of the JCPs technical expert groups.

We'd like to provide some explanation to the community as to why we're taking this significant step.

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 (LINK).

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 (LINK) 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 (LINKS).

By approving Java SE 7, the EC has failed on both counts : the members of the EC refused to stand up for the rights of implementers, and by accepting Oracle's TCK license terms for Java SE 7, they let the integrity of the JCP's licensing structure be broken.

The Apache Software Foundation concludes that that JCP is not an open specification process - that Java specifications are proprietary technology that must be licensed directly from the spec lead under whatever terms the spec lead chooses; that the commercial concerns of a single entity, Oracle, will continue to seriously interfere with and bias the transparent governance of the ecosystem;  that it is impossible to distribute independent implementations of JSRs under open source licenses such that users are protected from IP litigation by expert group members or the spec lead; and finally, the EC is unwilling or unable to assert the basic power of their role in the JCP governance process.

In short, the EC and the Java Community Process are neither.

To that end, our representative has informed the JCP's Program Management Office of our resignation, effective immediately.  As such, the ASF is removing all official representatives from any and all JSRs. In addition, we will refuse any renewal of our JCP membership and, of course, our EC position.

. . .

I seriously hope this is for the better future. But I fear this is just one or the first of the many casualties to come . . . :-(

Fasten your seatbelt, Java devs!

No comments:

Post a Comment