Sun's Java 2 Enterprise Edition and Microsoft's Windows DNA (Distributed Internet Applications) architecture are expected to duke it out as the programming models for businesses that want to build e-commerce Web sites.
The two companies are at odds because Sun wants its Java technology to be used on all computers, whereas Microsoft is chiefly interested in promoting its own Windows operating system.
"That's going to be a battle of titans," said Jon Kannegaard, Sun's vice president and general manager of the Java platform.
On the other side is Microsoft, whose application server technology--built into the Windows NT operating system--includes the company's proprietary programming model called Component Object Model (COM).
"Very few vendors will produce platforms that compete with Java 2 EE," wrote Patricia Seybold Group analyst Anne Thomas. Yet Microsoft is one of those rare vendors.
Both sides are gunning for a market that is expected to reach more $2 billion in revenue by 2002, according to Forrester Research. Application server software connects back-end databases to clients who need access to data.
Microsoft executives at Sun's JavaOne conference today said the complexity and performance requirements of Java 2 EE will undermine the cross-platform, interoperable benefits of Java, but Sun says it's already way ahead of Microsoft with today's announcement.
Sun executives say they feel they've taken the lead in releasing Java 2 EE, which serves as a uniform way for Java developers to build enterprise applications.
Where Sun has the support of IBM, Oracle, and others, Microsoft is tied to a single platform, Sun said. "They offer a single product, a single platform, from a single vendor," said Bill Roth, product line manager for Java 2 EE.
Kannegaard said Java 2 EE should be completed by early next year, with the arrival of items such as a new version of JavaServer Pages and a reference implementation--a working version to test and develop the technology.
Microsoft's plan, naturally, centers on Microsoft technologies. Although some of its components are in place today, the arrival of Windows 2000 later this year will deliver a crucial component called COM+.
The third version of Microsoft Transaction Server, which has been renamed COM+, will include new services, such as the ability to "cache" or temporarily store information from databases, so the application server doesn't have to waste time and repeatedly grab data from a database.
Included in Microsoft's app server is messaging software, called Message Queuing Services, a Web server called Internet Information Services, as well as Active Server Pages.
Microsoft's DNA is a collection of standards and software that in many cases does the same thing as Java 2 EE, Risse said.
For example, Microsoft's messaging standard corresponds to Java Messaging Service, Open Database Connectivity corresponds to the Java Database Connectivity, and Microsoft's active server pages is the model for Sun's JavaServer Pages, Risse said.
Microsoft's technology, of course, runs on Windows servers. However, Risse emphasized that it also is designed to plug into legacy servers.
Microsoft is skeptical that Java 2 EE will be truly cross-platform. The complexity of the Java 2 EE specification will mean that different companies will implement it different ways, so that a program written to run in one Java 2 EE environment won't necessarily run in another environment, Risse said.
In addition, the need for high performance in servers still is a problem with Java, he said. Java database access methods acknowledge this issue, he said, since one version of the Java database connection specification is written in native code--in other words, it can't be moved from one computer to another.
Sun acknowledges that Java 2 EE isn't totally portable. The "stuff around the edges" will change, said Kannegaard, mentioning connections to databases. Still about 80 or 90 percent of a company's software will be portable. "Big chunks just plain work everywhere," he said.
However, where Java 2 Enterprise Edition requires companies to use the Java programming language, Microsoft's DNA is open to any, including Java, C++, and Visual Basic, Thomas said.
Analyst Dave Kelly, of the Hurwitz Group said Java is starting to look like an operating system with all the new additions in Java 2 EE.
"The more stuff Sun puts into Java, the more Sun looks like Microsoft," Kelly said. "You can view it like a distributed operating system."
Analysts say it's too early to predict who will win. But Kelly said Sun--historically a hardware firm--still needs to prove itself as a software company, he said. "As you get more people using more infrastructure pieces. Sun's ability to upgrade and add to those pieces to satisfy people will be strongly tested," he said.