In what should come as a relief to some customers, Microsoft said it will continue to provide support for its Java virtual machine software until the end of September 2004, 10 months longer than it had originally planned, under a new licensing agreement announced Tuesday with Sun Microsystems.
Microsoft's Java license had been due to expire Jan. 2, in accordance with a legal settlement reached two years ago over its alleged misuse of Sun's technology. The companies have agreed to a new Java "maintenance" license for Microsoft that is valid until Sept. 30, 2004, and allows Microsoft to issue important updates such as security patches for its Java virtual machine (JVM).
The companies agreed to the new terms in order to give customers more time to migrate away from Microsoft's JVM before it stops supporting the product, said Jean Elliott, group manager at Sun for Java distribution programs.
JVMs allow Java programs to run on any computer regardless of the operating system or hardware and are available from several vendors including Sun. Microsoft has set up a Web site at http://www.microsoft.com/java where it is offering advice for customers about their options, which include moving to a different JVM or to Microsoft's .Net platform.
Both vendors have been told by customers that they needed more time to make the transition, including enterprises, developers and independent software vendors, said Matt Pilla, a Microsoft senior product manager for Windows.
Microsoft obtained its Java license from Sun in 1996 and the companies were at loggerheads soon after. Sun filed a breach of contract lawsuit against Microsoft the following year, accusing it of distributing an incompatible version of Java. In 1998 it added unfair competition and copyright infringement to its suit.
Sun argued that Java's ability to run on any operating system made it a significant threat to Windows, and that Microsoft tried to "derail" Java by creating its own version of it that tied developers to Windows. Microsoft acknowledged adding extensions to its Java products that took advantage of Windows-specific features, but denied any wrongdoing.
The companies settled the case in 2001, with Microsoft agreeing to pay Sun US$20 million and to stop using the Java logo on its products. It was permitted to keep using the version of Java it was distributing at the time for a further seven years, but its license to use Sun's source code and compatibility test suites to support its JVM were due to expire Jan. 2, Sun's Elliott said.
Sun continues to pursue a separate, private antitrust case against Microsoft over its alleged misuse of Java, which was filed after its initial lawsuit was settled.
John Rymer, an analyst with Forrester Research Inc. in Cambridge, Massachusetts, said the companies had to come up with a plan to help customers transition away from Microsoft's JVM. "All this does is provide those customers with an additional 10 months for the transition process," he said.
The companies wouldn't disclose financial terms Tuesday of the new license. It does not allow Microsoft to upgrade its JVM with a more recent version of Java, only to provide maintenance fixes for its JVM, Sun's Elliott said.
Despite the years of animosity between them, Elliot said she was "very impressed" at how Sun and Microsoft were able to reach agreement over the new license. Microsoft was "very civilized," she said.
She said some companies have found it relatively easy to transition to a new JVM, but for companies that took advantage of Microsoft's Java extensions the process has been more difficult. Aside from actual development work, the transition has required lengthy planning and testing for some companies, she said.
The industry-wide replacement of Microsoft's JVM could be a significant undertaking, Rich Green, vice president of Sun's Developer Platforms Group, said in Sun's statement. Tuesday's agreement gives customers who need it more time to make the transition, with assurance that Microsoft will be able to deal with any "critical concerns" in its JVM while the transition is underway.
Microsoft and Sun have both been advising companies to make the move, with Microsoft urging customers to switch to its .Net platform and C# programming language and Sun urging customers onto newer versions of Java.
Meanwhile, Microsoft has been phasing its JVM out of its products, including Windows and its Internet Explorer Web browser. At the same time, Sun has been signing deals with PC makers and other vendors to distribute JVMs, in order to ensure that Java applications can continue to run.
(Robert McMillan in San Francisco contributed to this report.)