The Apache Software Foundation board has made an announcement to leave the JCP if their rights as implementers of the Java specification are not upheld.
Through the JSPA, the agreement under which both Oracle and the ASF participate in the JCP, the ASF has been entitled to a license for the test kit for Java SE (the "TCK") that will allow the ASF to test and distribute a>
The ASF will terminate its>
At issue is the ongoing refusal of Sun, and later Oracle, to provide a testing compatibility kit for the ratification of their open-source Java implementation. The reason for this is financial – a significant portion of revenue that Oracle receives is for the use of Java on mobile devices, and a freely-available JVM for mobile devices may threaten that revenue stream. (The OpenJDK is not suitable for many embedded devices, as it requires that all source code be> However, the JCP document requires that JSRs be available. Under the umbrella JSR for the Java 6 platform, JSR 270, the licensing terms include:csharp
10. The Java SE 6 TCK will be offered for license at no charge, with trademark and branding rights, but without support, to qualified not-for-profit entities (including not-for-profit academic institutions) and qualified individuals engaged in efforts to create compatible implementations of the Java SE 6 Specification.
It is this discrepancy that the Apache board has been complaining about since April 2007, then referring to the Java 5 specification. The key problem, then as now, is the field of use limitation:
Since August 2006, the ASF has been attempting to secure an acceptable license from Sun for the test kit for Java SE. This test kit, called the "Java Compatibility Kit" or "JCK", is needed by the Apache Harmony project to demonstrate its compatibility with the Java SE specification, as required by Sun's specification license. The JCK license Sun is offering imposes IP rights restrictions through limits on the "field of use" available to users of our software.
These restrictions are contrary to the terms of the Java Specification Participation Agreement (JSPA) - the governing rules of the JCP - to which Sun is contractually bound to comply as a signatory. Specifically, the JSPA requires that:
A specification lead cannot "impose any contractual condition or covenant that would limit or restrict the right of any licensee to create or distribute such Independent Implementations" (section 5.C.III)
A specification lead must license all necessary IP royalty-free to any compatible implementation of a specification (section 5.B)
This implementation is orthogonal to the patent case between Oracle and Google, which is> Since IBM joined OpenJDK, there has been an ongoing question of can Oracle save Java? With no softening on Oracle's stance – despite originally saying that the spec should be availble, prior to the takeover – this endgame will play out in public.
Unfortunately, whilst Oracle still needs to get a clue, others, such as Doug Lea have already left the JCP.
Whether Apache stays as members of the JCP or not, Oracle are unlikely to change their stance on the unrestricted TCK availability for Java. And even if Apache were to stay and vote against Java 7, Oracle would almost certainly still push it through anyway.
Oracle has painted itself into a corner with the community. Many of the original developers of MySQL have left (and created open-source forks like MariaDB and Drizzle); the OpenSolaris board, having resigned, has moved on to Illumos and many other luminaries have also left. There's even a poll asking whether the JCP is an independent standards organization.
Since Oracle control Java, and also the JCP, they can terminate the JCP as easily as they terminated the OpenSolaris project. As Apache does not have the resources to get into a prolonged legal battle about upholding the contractual obligation, whether they stay or go will have no impact on whether Oracle>