Sun Microsystems Inc. on Wednesday tweaked its Java licensing, emphasizing that the company wants to make Java as open source as possible while maintaining platform compatibility.
The vendor also provided an update on the next version of Java, which boosts Web services functionality on the client side.
Key to the company"s licensing plan is Project Peabody, which introduces a new scheme called a JIUL (Java Internal Use License), pronounced "jewel." Under JIUL, users can change Java source code for their internal use only. JIUL is based on an honor system in which Sun expects compatibility to the J2SE specification but relies on users to ensure that compatibility. Use of Java under JIUL is free.
There is a risk, though, of Java forking because of JIUL but the company is allowing users to take that risk, said Graham Hamilton, a Sun vice president and Sun Fellow in the company"s Java platform group, during a teleconference. Forking of Java previously has yielded only regrets, according to Sun officials.
JIUL is expected to be ready in about a month.
Sun with its licensing efforts is seeking to appease open source advocates and those emphasizing compatibility.
"We"re trying to respect needs of both sides, to create a licensing and collaboration atmosphere that"s as close to open source as possible while not violating the expectations of the rest of the world around interoperability and compatibility," said James Gosling, Sun CTO at Sun Developers Platform Group. He also holds Sun Fellow status.
Despite the calls for open sourcing of Java made by parties such as IBM Corp., not everyone is interested in an open source route for the programming language, according to Gosling. He cited the Brazilian health care system and others as users that focus on compatibility rather than open source.
"By and large, they"re actually somewhere between uninterested and hostile to the sort of wild and wooly world of open source," Gosling said.
Created to simplify licensing, Peabody is focused on transparency in developing source code, Hamilton said."There"s definitely this desire (by developers) to see source code regularly," he said. Developers also want to do their own bug fixes without licenses complicating that, and compatability also is a big concern, he said.
Also being unveiled on Wednesday as part of Peabody is the JDL (Java Distribution License), a narrowly focused license for developing full-scale commercial deployments of Java on different operating systems.
Sun previously has created the JRL (Java Research License) as part of the Peabody effort. Intended for the research community, it allows for sharing of binary-based research distributions of Java. The company has been releasing source code for J2SE under the JRL.
An analyst listening in on Sun"s teleconference applauded Sun"s licensing efforts."I"m glad to hear things are opening up and there"s more transparency," said analyst Anne Manes, of the Burton Group.
The current SCSL (Sun Community Source License), which has been considered cumbersome, is expected to be displaced by JIUL."I expect SCSL will fade out. We"re probably not going to do (J2SE) 6.0 under SCSL," Hamilton said.
Gosling questioned the value of some existing open source licenses, such as the Gnu General Public License."A lot of the open source licenses are not very well written," Gosling said.
Sun officials also provided an update on the upcoming Mustang version of J2SE, which will be version 6.0. Due to ship in the first half of 2006, Mustang will focus on Web services, performance, monitoring, management, and development enhancements.
Mustang will make it easier to build large-scale desktop applications with Java, Hamilton said. Additionally, the platform will add WSIO (Web Services Interoperability Organization) Basic Profile support, which already is in J2EE. A complete Web services stack, including JAX RPC functionality, is expected to be included in Mustang.
With Mustang, Java clients will be able to use Web services to talk to back-end Java- or Microsoft .Net-based systems, Hamilton said.
J2SE provides an environment for application development on desktops and servers and serves as the foundation for the J2EE, according to Sun"s Web site.