The pieces are finally falling into place to let corporate developers use Java to build serious business applications on the World Wide Web. IBM, for example, has announced that a large collection of its development libraries will be rewritten in Java, Sun's Internet development language. The libraries, which are collections of commonly used Java code, include user-interface components from IBM's Taligent subsidiary and business frameworks from its project code-named San Francisco. Together, they should make it much easier for Java developers to use that language for more than just pretty Web pages.
The lack of Java libraries for building server applications has irritated early Java users. "In the future, Java might be usable on servers, but right now it's all at the front end. We have to write our servers in C++ and C the standard traditional way," says Mark Rhoads, vice-president of software engineering at Information Presentation Technologies in San Luis Obispo, California, which is developing Java applications for the printing business.
As a result, client/server Java developers must juggle two programming languages and lose Java's ability to run without change on a variety of platforms. By throwing its support -- and code -- behind Java, IBM joined forces with Sun and Netscape to add some enterprise-class muscle to Web applications. That lets corporate Java developers do transaction processing and other common client/server actions across the Internet.
Earlier this month, Netscape announced that future versions of its Navigator browser and SuiteSpot server will let applications create a secure, reliable Web data pipeline based on the Object Management Group's Common Object Request Broker Architecture (CORBA). And IBM and Sun say they would work together to ensure that their CORBA-based communication systems could interoperate. IBM will create Java links to its MQSeries middleware and CICS transaction system.
Those moves will give the Web the infrastructure it needs to build serious client/server applications, users says. "If you want the Web client to talk to the Web server, there are not a lot of communication facilities available right now," says Alok Garg, senior consultant at Cap Gemini America in Iselin, New Jersey. But it's the added libraries that will fill the most apparent need, Java developers says. Although companies such as Rogue Wave Software. in Corvallis, Oregon, and KL Group in Toronto have converted some of their C++ libraries to Java, the language has lacked full-scale application frameworks available for other languages, such as the C++ Microsoft Foundation Class libraries from Microsoft.
Instead, Java developers must work around important capabilities that are simply missing, says Doug Garrett, president of AnetSc, a Java developer in Fremont, California. "It's a matter of how fast you'll be able to develop and deliver something," Garrett says.
"Right now, Java still lacks libraries for a lot of functionality that's available in C++," Garg says. "If IBM provides the kind of functionality that is already there in C++ and other languages, I don't think Java might need a lot of other help."