Sun Microsystems (SUNW)
is stepping up its campaign to cleanse Java of all impurities.
Today, the company published a paper that outlines the
objectives of its 100 Percent Pure Java initiative. Announced by Sun last
December along with dozens of other vendors, including Netscape Communications and IBM, the initiative is an effort to
discourage developers from extending their Java applications with
technologies like Microsoft's
ActiveX, which works primarily on Windows.
The campaign has taken on the tone of a moral crusade, with Sun leading the
charge to preserve the basic credo of Java technology, something the
company encapsulates in a single slogan: "write once, run anywhere." Java
was designed so that developers could create an application that runs on
any platform, regardless of the underlying hardware or operating system.
However, in its version of the Java Virtual Machine, the engine that drives
applets on a user's computer, Microsoft allows developers to extend the
capabilities of Java programs using ActiveX, a technology that allows
software objects to work with each other.
Microsoft claims that it is doing developers a favor since Java is still
relatively immature, lacking support, for a broad range of fonts, hardware
devices like joysticks, and other capabilities. But Microsoft's ActiveX
extensions to Java have rankled Sun, and now the company wants to warn
developers away from ActiveX.
"ActiveX is touted as a solution for the majority of the world's computer
users, since Microsoft operating systems and applications are used in most
desktop computers and a large percentage of servers," Sun's Java "white
paper" says. "However, ActiveX is not a cross-platform solution, so
applications developed using ActiveX eliminate all non-Microsoft users from
the customer base."
In the paper, Sun describes the basic requirements for a "100 percent pure"
Java program, including avoiding all native, platform specific extensions
and adhering to a core set of Java APIs. Sun is also developing a
certification program so it can test and approve applets.