The Java Community Process may be the most important organization in the world of Java software, with the possible exception of Sun Microsystems itself. In fact the JCP, which helps dictate the future of Java by developing new Java technology specifications and reference implementations, is hardly separate from Sun. The company sponsors the organization by paying the salaries of its staff, and exerts great influence over its inner workings.
This is nothing new, of course. The JCP was founded by Sun Microsystems in 1998. Throughout the past decade the company has relinquished some control over the JCP, but critics say it's not enough. Many in the Java community believe that Sun's pursuit of its own commercial interests is incompatible with the goal of fostering a collaborative environment that seeks only to improve Java technology.
Some have called for more fundamental changes to the governance of the JCP, or proposed that the JCP should be released from Sun altogether.
Others say that Sun cannot afford to relinquish control of the Java standards body, and that the JCP needs more leadership from Sun, not less.
Democratizing the JCP
"There are two principal criticisms, one of which is that Sun has too much influence, and the other is that the organization is too secretive," says Patrick Curran, chairman of the JCP.
Although he is a Sun employee, Curran says he does his best to promote the interests of the community rather than Sun's. He defends Sun's prominent role in the JCP while acknowledging that he would like the group to be more "open, democratic, and egalitarian." Going forward, Curran expects revisions to the JCP governance model that will add transparency and create a more level playing field.
JCP Chair Patrick Curran recently spoke with JavaWorld about the JCP standards process, challenges facing the JCP, and how he believes they could be fixed: Listen to the podcast.
Despite the criticisms, Sun executive Jeet Kaul says the JCP is among the better standards bodies he has participated in, particularly considering it involves companies in direct market competition with one another.
"The only role we play is trying to make sure there is agreement and move things forward," says Kaul, senior vice president of client software at Sun. "Compatibility is the hallmark of what we want. If you had 7,000 different versions of Java it would have no value in the market today. It would hurt the same people who are complaining."
The most well known JCP controversy is likely the one involving the Apache Software Foundation, which accuses Sun of refusing to grant it an acceptable license for its open source Java SE implementation called Harmony. According to Geir Magnusson, Apache's representative to the JCP, the license Sun did offer would "limit the freedom users [of Apache Harmony] have to reuse the software, whether it's to redistribute or to make a derivative work."
Magnusson is angry that Sun holds the power to license Java technology, saying that Apache should be able to do whatever it chooses as long as its implementation is compatible with JCP-approved specifications.
But the current rules were agreed upon by the JCP executive committee members at large, not by Sun alone, Curran notes.
Apache on February 23 cast the lone dissenting vote against the Java EE 6 specification, saying it was a protest against Sun's stance on Java SE licensing. "We believe that members of the JCP that do not comply with the letter and spirit of the governing rules should not be allowed to lead JSRs," Apache commented.
Kaul accuses Apache of wanting an "unfettered license" in which anybody who uses Apache code "could do anything with Java they wanted." At some point, such an approach will destroy Sun's ability to make money, he says.
Curran says the dispute may shed light on problems with the Java Specification Participation Agreement (JSPA), a legal document that each JCP member must enter into with Sun. "If there is enough ambiguity in the JSPA document such that expensive lawyers can disagree about its interpretation," he says, "we need to fix that so it is clear and unambiguous and expresses what we want it to express."