Sun Microsystems, Inc. v. Microsoft Corp.

Decision Date24 March 1998
Docket NumberNo. C 97-20884 RMW(PVT).,C 97-20884 RMW(PVT).
Citation999 F.Supp. 1301
PartiesSUN MICROSYSTEMS, INC., a Delaware Corporation, Plaintiff, v. MICROSOFT CORPORATION, a Washington Corporation, Defendant.
CourtU.S. District Court — Northern District of California

Lloyd R. Day, Jr., Cooley Godward LLP, Palo Alto, CA, for Plaintiff.

David T. McDonald, McDonald & Quackenbush, Seattle, WA, Terrence P. McMahon, Orrick, Herrington, & Sutcliffe LLP, Menlo Park, CA, Allen Ruby, Ruby & Schofield, San Jose, CA, for Defendant.

ORDER RE SUN'S MOTION FOR PRELIMINARY INJUNCTION AGAINST MICROSOFT

WHYTE, District Judge.

The motion of plaintiff Sun Microsystems, Inc. for a preliminary injunction was heard on February 27, 1998. The court has read the moving and responding papers and heard the oral argument of counsel.1 For the reasons set forth below, the court grants Sun's motion for a preliminary injunction.

I. BACKGROUND

Plaintiff Sun Microsystems, Inc. ("Sun") brings this action against defendant Microsoft Corporation ("Microsoft"), alleging that Microsoft breached the Technology License and Distribution Agreement ("TLDA") pursuant to which Microsoft licensed Sun's JAVA™ Technology. Sun also contends that Microsoft has violated the trademark license provisions of the TLDA which grant Microsoft the right to use Sun's "JAVA Compatible" trademark provided that Microsoft's products pass certain compatibility tests. Sun alleges that Microsoft is infringing Sun's "JAVA Compatible" trademark by distributing products bearing the trademark that do not satisfy the TLDA requirements. Sun now seeks to preliminarily enjoin Microsoft from using the "JAVA Compatible" trademark on Microsoft's Internet Explorer 4.0 ("IE 4.0") and Software Developer's Kit for Java 2.0 ("SDKJ 2.0") until and unless each such product first passes the Sun test suite accompanying the most current version of the JAVA™ Technology incorporated in such product.

A. SUN'S JAVA™ TECHNOLOGY AND LICENSING PROGRAM

Sun's JAVA™ Technology comprises a standardized application programming environment that affords software developers the ability to create and distribute a single version of programming code which is capable of operating on many different, otherwise incompatible, system platforms and browsers. Most computer systems implement platform-dependent programming environments, such as Microsoft's Win32 programming environment. Programs created to run on a particular platform will not function on a different platform. Thus, a software developer must choose the platforms for which it will develop and support different versions of the same program. Sun's platform-independent JAVA™ Technology, which can be implemented on many different system platforms and browsers, obviates the need for creating and supporting different versions of the same program.

Sun's JAVA™ Technology is a so-called "class-based" language in that its functionality is determined by the Java classes available to the programmer. Therefore, new functionality requires developing new Java classes. Programs written in the Java programming language are compiled into intermediate instructions called bytecodes or Applets. See TLDA § 1.2. These bytecodes or Applets are then "interpreted" by another computer program which emulates a hypothetical CPU called the Java Virtual Machine. See TLDA § 1.11. The Java Virtual Machine translates the Applets into instructions understood by the specific computer CPU on which the Java Virtual Machine is running. Therefore, a specific interpreter or virtual machine is needed for each computer CPU on which the Java program is run.

In an effort to promote widespread adoption of the JAVA™ Technology, Sun embarked on an open licensing program. Beginning in August 1995, Sun entered into license and distribution agreements with major platform manufacturers, including Apple, DEC, Fujitsu, Hewlett-Packard, IBM, Microsoft, Netscape, Novell, SCO, Siemens, and Silicon Graphics.

Sun asserts that, in general, these license agreements grant Sun's source code licensees the right to develop and distribute value-added products that incorporate Sun's JAVA™ Technology. The license agreements also require the products developed by licensees to pass certain compatibility tests created by Sun, called the JCK compatibility test suite. Provided that its software product passes Sun's test suite, the licensee is also granted the right to display Sun's "JAVA Compatible" trademark on its product. Sun also asserts that in order to maintain and extend the cross-platform benefits of the JAVA™ programming environment, it is critical that each licensee's system platform or browser strictly adheres to Sun's published specifications.

In connection with Sun's licensing program, Sun has developed its JAVA™ Compatibility Kit ("JCK"). The JCK comprises an array of conformance tests to determine whether products developed by Sun's licensees conform to the specifications for JAVA™ Technology. In January 1996, Sun released its first commercial version of the JAVA™ Development Kit ("JDK") 1.0. At the same time, Sun also released the JAVA™ 1.0 compatibility test suite comprising approximately 300 individual tests. Schroer Decl. ¶ 8. In February 1997, Sun released JDK 1.1 which was an upgrade to the JAVA™ Technology. The JDK 1.1 release was accompanied by the so-called JAVA™ Compatibility Kit ("JCK") 1.1a test suite which incorporated over 8,000 individual tests. Schroer Decl. ¶ 9.

One test in the JCK 1.1a release is the so-called "Signature Test." The Signature Test is designed to ensure that products implementing the JAVA™ Technology uniformly adhere to a standard set of public application programming interfaces called the "java." APIs. Hankinson Supp. Decl. ¶ 8. More specifically, the JCK 1.1a Signature Test probes for additions, deletions, and modifications to any public element of any package or class bearing the "java." prefix. Hankinson Supp. Decl. ¶ 11. The Signature Test appears to be one of the most important tests in JCK 1.1a since adherence by licensees to a standard set of APIs is critical to maintaining cross-platform compatibility. Hankinson Supp. Decl. ¶ 8.

B. SUN'S LICENSE AGREEMENT WITH MICROSOFT
1. JAVA Compatibility

On March 11, 1996, Microsoft entered into a Technology License and Distribution Agreement with Sun. Pursuant to sections 2.1 and 2.2 of the TLDA, Sun granted Microsoft a license to develop and distribute software products which incorporate Sun's JAVA™ Technology. See Baratz Decl. Ex. A. Pursuant to section 2.6(a)(iv), each new version of any Microsoft product that incorporates Sun's JAVA™ Technology must pass the test suites of the JCK. The TLDA defines the "Java Test Suite" as "SUN's publicly available test suites for validating that products which interpret Java bytecodes comply with the SUN specification of the AAPI as of the date of the test suites." TLDA § 1.15. The AAPI is defined as:

(a) the public application programming interface to the Java Applet Environment (JAE) reflected in the Technology as identified in Exhibit A, (b) the bytecode specification in the Documentation entitled "OEM Java Virtual Machine Specification," (c) the Java language specification in the Documentation entitled "OEM Java Language Specification" and (d) the OEM Java API Specification, as modified by SUN during the term of this Agreement.

TLDA § 1.1. Sun and Microsoft also entered into a trademark license agreement concurrently with the TLDA. The trademark license agreement grants Microsoft a license to use Sun's "JAVA Compatible" trademark only in connection with products which pass Sun's relevant compatibility test suites.

2. Microsoft's Rights to Determine Specific Implementations of JAVATechnology

Microsoft argues that the TLDA contains significant restraints on Sun's ability to impact Microsoft's incorporation of the JAVA™ Technology into its products. First, added functionality to the JAVA™ Technology must be included in new classes called "Supplemental Java Classes." TLDA § 1.23. Microsoft is not obligated to include Supplemental Java Classes in its products; provided, however, that Microsoft makes the Supplemental Java Classes available to the public through alternative distribution channels. TLDA §§ 2.6(a)(vii), 2.7(a). The TLDA also requires that any Supplemental Java Classes must run on Microsoft's most current products incorporating the JAVA™ Technology. See TLDA § 2.7(a).

Second, the TLDA appears to limit Sun's modifications to existing Java classes to "reasonable enhancements which remain consistent with [their] original intended purpose." TLDA § 2.7(b). Additionally, Sun agreed that any upgrade to the JAVA™ Technology would be backward compatible with the two previous upgrades. TLDA § 2.6(a)(iii).

The TLDA also permits Microsoft to extend or make additions to the AAPI, referred to as "Value Added Open Packages" or "VAOPs." TLDA §§ 1.28, 2.8(a). However, the TLDA restricts Microsoft to a specific naming convention for any VAOPs. See TLDA § 2.8(d). Additionally, the TLDA proscribes any modification or addition to the names of the public java classes "whose names begin with `java,' `COM.sun' or their equivalents." TLDA § 2.8(d).

3. Limitation of Remedies

Microsoft also argues that the TLDA precludes the injunctive relief sought by Sun. Section 11.2(d) of the TLDA provides:

Except as expressly stated in this Section 11.2 and in Section 12.6, the parties agree that in the event that either party breaches any material term of this Agreement, the non-breaching party shall deliver notice thereof to the breaching party and the breaching party shall have thirty (30) days from receiving such notice to cure such breach. If the breach continues after such 30-day period, the non-breaching party's sole remedy shall be to seek monetary damages in a court of competent jurisdiction.

Baratz Decl. Ex. A. Furthermore, section 11.2(b) provides Sun the right to terminate the licenses granted under the TLDA for a wilful...

To continue reading

Request your trial
11 cases
  • United States v. Microsoft Corporation, Civil Action No. 98-1232 (TPJ) (D. D.C. 9/14/1998)
    • United States
    • U.S. District Court — District of Columbia
    • September 14, 1998
    ...platforms for which they will develop and support different versions of their software. See generally Sun Microsystems, Inc. v. Microsoft Corp., 999 F. Supp. 1301, 1302 (N.D.Cal. 1998). Because of Windows' dominant market share, ISVs naturally write their applications to run on Windows, lea......
  • Foundation v. Hart
    • United States
    • U.S. District Court — Northern District of California
    • September 24, 2017
    ...courts have found that the continued use alone establishes a likelihood of consumer confusion. Sun Microsystems, Inc. v. Microsoft Corp., 999 F. Supp. 1301, 1311 (N.D. Cal. 1998). While a handful of district court cases have found that the court need not go through the Sleekcraft analysis w......
  • In re Microsoft Corporation Antitrust Litigation
    • United States
    • U.S. Court of Appeals — Fourth Circuit
    • June 26, 2003
    ...Internet-enabled distributed computing platforms." 2. The California litigation is described in part in Sun Microsystems, Inc. v. Microsoft Corp., 999 F.Supp. 1301 (N.D.Cal.1998); Sun Microsystems, Inc. v. Microsoft Corp., 21 F.Supp.2d 1109 (N.D.Cal.1998); Sun Microsystems, Inc. v. Microsof......
  • Sun Microsystems, Inc. v. Microsoft Corp.
    • United States
    • U.S. District Court — Northern District of California
    • January 24, 2000
    ...management official wilfully and intentionally breached the compatibility provisions of the TLDA. See Sun Microsystems, Inc. v. Microsoft Corp., 999 F.Supp. 1301, 1306-07 (N.D.Cal. 1998). However, as the court's concurrently issued Order Re Sun's Motion to Reinstate November 17, 1998 Prelim......
  • Request a trial to view additional results

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT