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.
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 released under the GPL, thus requiring a commercial license.) However, the JCP document requires that JSRs be available. Under the umbrella JSR for the Java 6 platform, JSR 270, the licensing terms include:
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:
This implementation is orthogonal to the patent case between Oracle and Google, which is related to the JVM itself. Although Harmony ships the DRLVM (originally donated by Intel), the availability of the TCK would have granted a use of those patents. Without the TCK, Apache Harmony's JVM may be in violation of some of those patents – though an Oracle-driven court hearing would automatically enrol the JSPA dispute, something Oracle is keen to avoid. 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 releases Java 7 next year or not. As a result, leaving the JCP is the only option left available to them. |
|