Tomorrow, the company will introduce a technology called J/Direct for making Java applications that exploit functions available in Windows but not in Java itself, Microsoft said today. This will make the applets more powerful because they can call on capabilities made possible by the operating system, but these applets will run only on Windows.
Microsoft's Java engine, called the Microsoft Virtual Machine, already allows developers to write Java programs that draw on certain ActiveX functions. But J/Direct is expected to go beyond the current limited integration between Windows and Java, allowing Java applications to access the full range of application programming interfaces in Windows 95 and NT--known collectively as the Win32 APIs (application programming interfaces).
The move is bound to be a controversial one that will displease Sun and some Java developers. Sun has positioned Java as a completely cross-platform technology and has tried to head off any effort to tie Java applets to individual operating systems. It has dubbed this effort the "100 percent pure" Java campaign.
But while many developers want to make cross-platform applets, the pure Java campaign has had limited success because the programming language doesn't yet offer all the functions that an operating system does.
Microsoft has been among the most ardent critics of the pure Java campaign, saying that it handicaps applications with fewer features than competing products.
"Purity doesn't pay the bills," said Cornelius Willis, a group product manager at Microsoft. Applets that draw on the power of these operating systems simply run faster and can do more things. With native operating system calls, a Java developer can, for example, accelerate the performance of a 3D viewer applet.
Even though this sacrifices the portability of an applet, Microsoft is by no means the only company that has advocated bolting Java programs to specific operating systems. At the PC Expo trade show in New York today, Ellen Hancock, Apple Computer's executive vice president of marketing, reiterated that Rhapsody, a future version of Apple's Mac OS, will also make native connections between Java and underlying Rhapsody programming interfaces.
Sun has promised to improve Java so that it offers all of the same capabilities as the popular desktop operating systems. The question is how long this will take and whether Microsoft can get developers hooked on J/Direct in the meantime.
J/Direct will be included as part of the Microsoft Virtual Machine in the next beta version of Internet Explorer 4.0, due out in the next four to six weeks, according to Willis.