Sun Sues Microsoft For Breach Of Java™ Contract
Microsoft fails Java compatibility tests for Internet Explorer 4.0
PALO ALTO, Calif. -- October 7, 1997 -- Sun Microsystems, Inc. today announced that it has filed a lawsuit in U.S. District Court against Microsoft Corporation for breaching its contractual obligation to deliver a compatible implementation of Java technology on its products. Sun is seeking an injunction to prevent Microsoft from improperly using the Java Compatible logo. Sun is also seeking to prevent Microsoft from misleading Java developers and to prevent them from delivering anything but fully compatible Java technology implementations.
Specifically, the complaint charges Microsoft with trademark infringement, false advertising, breach of contract, unfair competition, interference with prospective economic advantage and inducing breach of contract.
One of Microsoft's or any Java licensee's most significant contractual obligations is to pass the Java compatibility tests, which determine if their technologies conform to the Java specifications and APIs. The products that failed are Microsoft's new Internet Explorer 4.0 browser and its Software Development Kit for Java (SDKJ). As a result, applications written using Microsoft's development tools may not run on other operating systems such as MacOS, UNIX, or other browsers such as Netscape Navigator. Conversely, applications written using Sun's Java Development Kit that run on MacOS, UNIX and Netscape Navigator may not run on Internet Explorer 4.0.
"Sun's first responsibility as stewards of the Java technology is to preserve the significant investments that Sun and hundreds of companies have made. We are required to take this action on behalf of our licensees, the Java industry and Sun's shareholders," said Alan Baratz, president of Sun's JavaSoft division.
Baratz added that for the past six months and up until 6 p.m. Sunday, September 28, Sun worked diligently with Microsoft in hopes of convincing them to abide by their agreements.
According to the complaint, "Rather than comply with its contractual obligations, defendant Microsoft has instead embarked on a deliberate course of conduct in an attempt to fragment the standardized application programming environment established by the Java technology, to break the cross-platform compatibility of the Java programming environment, and to implement the Java technology in a manner calculated to cause software developers to create programs that will operate only on platforms that use defendant Microsoft's Win32-based operating systems and no other systems platform or browser."
The complaint further alleges, "In particular, defendant Microsoft has deceptively modified the Java APIs. . . By secretly adding Win32-specific and other APIs to the Java class libraries . . . Microsoft has acted to induce independent software developers who use SDKJ unwittingly to write programs. . . expecting to achieve cross-platform functionality. . ."
"We examined all of our alternatives and felt that we had no choice but to pursue litigation," said Michael Morris, Vice President and General Counsel, Sun Microsystems, Inc.
The suit was filed today, October 7, 1997 at United States District Court, Northern District of California, San Jose Division.
The complaint specifies that Sun is seeking "preliminary and permanent injunction enjoining Microsoft. . .from using the Java Compatible logo; from doing directly or indirectly any acts or making any statements that are likely to cause confusion, mistakes or deception in the marketplace as to the compatibility of IE 4.0 and SDKJ 1.1 with Sun's Java technology . . . from doing directly or indirectly any acts that are likely to diminish the value of the Java Compatible logo. . ."
"The Java brand has enormous value in the industry. When users see `Java' they know they can expect Write Once Run Anywhere, Safe Network Delivery, and Smart Card to Supercomputer Scalability," said Baratz. "We are obligated to ensure that Java will always mean those things, and the industry fully supports that philosophy."
Sun noted that Windows users can access applications written for the Java Programming Environment by using Netscape Navigator. In addition, Java developers can bundle the Java Performance Runtime for Windows in their applications. Using this product, developers can deliver high-performance, fully-compliant Java for Windows.
About Sun Microsystems, Inc.
Since its inception in 1982, a singular vision, "The Network Is The Computer', has propelled Sun Microsystems, Inc., (NASDAQ: SUNW), to its position as a leading provider of hardware, software and services for establishing enterprise-wide intranets and expanding the power of the Internet. With more than $8.5 billion in annual revenues, Sun can be found in more than 150 countries and on the World Wide Web at http://www.sun.com.
Sun, the Sun logo, Sun Microsystems, Java, Write Once Run Anywhere, and The Network Is The Computer, are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. UNIX is a registered trademark in the United States and other countries, exclusively licensed through X/Open Company, Ltd.
Q & A Addendum
Q1: Why is Sun suing Microsoft?
A1: It is Sun's responsibility to defend the integrity of Java. We must do everything we can to preserve the significant investments that Sun and hundreds of companies have made in Java. We are taking this action on behalf of our licensees, the Java industry and Sun's shareholders.
Q2: What is the nature of the complaint? Has Sun revoked Microsoft's license?
A2: Sun has sued Microsoft for breaching its contractual obligation to deliver a complete, fully-compatible implementation of Java on its products. Sun is seeking an injunction to prevent Microsoft from using the Java Compatible logo.Sun is seeking to prevent Microsoft from misleading Java developers, and to prevent them from delivering anything but fully compatible Java technology implementations.
The complaint alleges trademark infringement, false advertising, breach of contract, unfair competition, interference with prospective economic advantage and inducing breach of contract.
To be very clear, this action does not seek to revoke Microsoft's license. Our goal is to pressure Microsoft to fulfill the obligations created in that license.
Q3: How did Microsoft breach their agreement?
A3: Microsoft delivered a product that did not pass the Java compatibility tests. Their license with Sun is very specific that no product containing any Java technologies may be shipped without first passing the Java compatibility tests. IE 4.0 does not pass the tests.
Q4: How does IE 4.0 fail the tests?
A4: First, IE 4.0 does not support the Java Native Method Interface (JNI), nor does it support Remote Method Invocation (RMI). However, there are other serious compatibility problems. IE 4.0 adds public API into several "java." packages. Several methods and fields were added to the awt, lang, and net packages. In addition, a small number of "java." public methods were removed.
Java developers expect that the public API found in any package with a name beginning "java." is part of the standard Java platform and that this API will be available in all Java Compatible implementations. Because Microsoft has put these additions in the "java.* hierarchy" developers using Microsoft's SDK can create apps or applets which they believe will run anywhere, which will only run in Microsoft Java products.
Q5: What's JNI? Why is it important?
A5: The Java Native Method Interface is an interface of the Java Virtual Machine that provides a way for developers to access native functionality on host platforms.
Q6: What's RMI? Why is it important?
A6: RMI is a an API that enables objects to be distributed in homogeneous Java to Java systems. Creating and implementing distributed computing architectures is one of Java's greatest strengths. A platform that did not include RMI would undermine this strength significantly.
Q7: What's JFC and is it part of this dispute?
A7: The Java Foundation Classes are a comprehensive set of class libraries developers use to create the look and feel of Java applications. Although they will be shipped by the end of this year, the JFCs will not be bundled with the JDK until the next version ships. They are not bundled with JDK 1.1. The current compatibility tests center on JDK 1.1 compatibility and therefore do not cover the JFCs. As a result, the JFCs are not part of any Java licensee's current contractual obligations.
Q8: How do the Java compatibility tests work?
A8: The test suites are based on the Java specifications. There are specific test suites for Java compilers, Java Virtual Machines, and Java API class libraries. The tests are bundled along with test tools to execute the tests into the package we call the Java Compatibility Kit. Each licensee is required to run the Java compatibility tests themselves. We offer support and guidance as needed. In addition, we audit tests results when they are delivered to us, and may run the tests on licensees' products ourselves.
Q9: Is Java fragmenting?
A9: There is only one Java. It is the platform that Sun and its other 116 licensees provide to the industry, the platform that over 700,000 developers are using to build apps; the platform that delivers a unique value proposition -- Write Once Run Anywhere, Safe Network Delivery; and Smart Card to Supercomputer Scalability. Only one of Sun's 116 Java licensees is seeking to deliberately undermine that value proposition and to confuse developers.
Q10: Is Netscape any more compliant than Microsoft?
A10: First, Netscape has been very clear with developers about their level of Java compatibility. Netscape does not misrepresent their status to developers, nor do they attempt to confuse them. Second, Netscape has a stated, demonstrated, commitment to delivering fully compliant Java implementations within their products.
Q11: How is Microsoft's behavior different from other Java licensees'?
A11: Microsoft is acting to undermine the Java value proposition. Microsoft has deliberately modified the Java class hierarchy by inserting Microsoft methods disguised as Java methods within the hierarchy. Because Microsoft has deliberately mislabeled the methods, developers using these methods may be deceived into believing that they have written 100% Pure Java apps. Because the methods exist only in Microsoft's SDK for Java and IE 4.0 products, developers will find that these apps can only run on Internet Explorer 4.0.
Microsoft has tried time and time again to FUD Write Once Run Anywhere. They have attempted to fulfill this claim by inserting their own technology within their Java implementation.
Q12: Is there a right way to add functionality to the Java platform?
A12: Of course. We encourage all of our licensees to make improvements on top of the Java platform. There is a well-defined infrastructure in place for doing so.
Any company who wishes to add function for Java has two options: propose the enhancement to us for incorporation into the Java APIs, or develop and deliver this new functionality OUTSIDE of the public Java API package.
Suggestions for changes within the Java API may be given to Sun to be evaluated by the Java community through Sun's well-established processes. No licensee may unilaterally make changes within the Java API and deliver them into the marketplace, as Microsoft has done.
Developers are entitled to expect that their use of Java classes will be supported on all Java Compatible programs.
Unauthorized changes WITHIN the Java API may undermine the Java value proposition -- platform independence, safety, scalability. That is the reason these kinds of changes are not permitted. The Java compatibility tests inspect implementations to ensure that changes to the public Java API are not made.
Q13: How will Windows users get Java now?
A13: Netscape Navigator is the best choice for end users who want to be sure they can always run Java.
For developers, Sun offers the Java Performance Runtime for Windows, a high performance implementation of what's required to run Java apps on Win 32 platforms, free of charge to developers. It is available for download from our web site.
Q14: How can Sun win a lawsuit against Microsoft, the most powerful software
company in the world?
A14: The issues are extremely clear here. The court looks at the case, not the companies involved. We are very confident that the court will see the merits of the complaint and move to a speedy resolution.