July 17, 2000
|
|
Application Development:
Java And XML: Complementarily Yours
The technologies work well together, especially in a heterogeneous computing environment
By Andy Patrizio
| Related links: |
|
|
| And from our sister publications: |
|
|
| TechEncyclopedia |
|
Send Us Your Feedback |
reat duos are legendary in entertainment, but it's not often you see one in technology. Technologies traditionally have either worked well with another technology such as the x86 architecture or Open Database Connectivity or, like most programming languages, they had no favorites.A growing number of developers, however, have found their Lennon and McCartney in Java and the Extensible Markup Language. The programming and markup languages are effective in tandem for retrieving data from almost any data source and sending it to any data receiver, whether it's server-to-server or server-to-wireless-device communication.
Both Java and XML are potent technologies. Java's modular and portable structure has made it the language of choice for writing distributed applications that run on everything from Windows NT servers to IBM mainframes. This makes Java ideal for both internal distributed computing and business-to-business computing, because one Java application can easily speak to another over the Internet thanks to Java's built-in security.
The platform-independent Java language lacks a way to exchange platform-and application-neutral data, which is where XML comes in. XML is a markup language. Similar to HTML, which is used for Web-page display, it surrounds data with tags--but XML tags are far more versatile. XML is extensible, meaning new tags can be added as needed and its structure lets developers define how the tagged content should be processed by an application.
Java and XML are two powerful technologies that together make a very strong team. They can run on any platform, which eliminates concerns about hardware, operating system, and network because Java and XML use standard Internet protocols.
"It's like XML is the noun and Java is the verb," says Bob Bickle, senior VP of development for Bluestone Software Inc., which just introduced a Java-and XML-based application server, Total-e-Server. "XML contains the data, and Java does something with it."
Java increasingly is used to build distributed applications either within a single business environment or in business-to-business exchanges. Distributed application development has accelerated with the release of Java 2 Enterprise Edition (J2EE) earlier this year because of its greatly improved Enterprise JavaBeans (EJBs) and other server technologies such as servlets and transaction processing.
What helped was that EJB 1.1, introduced in J2EE, was overhauled from the 1.0 version to include XML as the descriptor between EJBs.
As the preamble to the Enterprise JavaBeans Specification 1.1 states, it was thought that a format based on XML technology would lend itself to the ability to "create and pass content around, and to edit content created by others." It was also seen as a format that would be "more manageable and better suited for use by tools."
The deployment descriptors in Enterprise JavaBeans 1.0 previously were proprietary to the application server, so EJBs written for BEA Systems Inc.'s or SilverStream Inc.'s application servers often wouldn't work with servers from other vendors. Now that EJBs use XML to communicate, all application servers use the same language to exchange data with non-Java applications as well.
Because Java is an object-oriented language in which objects and Beans can be reused, less coding is required. "The older way was to code functionality in chunks and put them together in a manner you wanted, but you'd have to recode things if you wanted to use them elsewhere," says Robert Garron, president and CEO of Access 3000, an Internet service provider and systems integrator in Scarsdale, N.Y.
A project written in C++ that spanned more than a million lines could probably be cut down to 200,000 lines if written in Java, Garron says. "Since Java is reusable and has tons of components, a lot of the low-level infrastructure that you had to rewrite over and over again for project after project is already done," he says.
Bank of America's global corporate investment bank in Chicago is doing as much of its development as possible in Java, not just for Internet support but because staffers like the language. "We get faster, tighter, cleaner code with less effort," says Bill Conroy, manager of technical architecture in the bank's software engineering unit. "The programming models are a lot cleaner."
Bank of America is using J2EE as its framework for development and XML wherever it can. Beyond the speed of development, there's the company's environment. The bank is running Hewlett-Packard's HP-UX, IBM's AIX, Microsoft's Windows NT and Sun Microsystems' Solaris. "We have an extremely heterogeneous environment to consider," Conroy says. "I get things quicker to market if I use Java."
XML is the long-awaited answer to data transformation and exchange. Until now, data had to be exchanged via proprietary file formats, a difficult, expensive, and time-consuming process. XML allows the data to be independent of the application logic, which makes it easier to exchange data and separate data and applications.
"One of the problems in data transformation is someone coming up with a spec that both companies can agree on," says Gerry Seidman, president of IAM Consulting, a development and consulting firm in New York. More than once, IAM has encountered situations in which two companies trying to exchange data with a proprietary data format would write applications to do data exchange, but they didn't work. "So you ask, 'Why? Is it my fault or yours?'" Seidman says. "Now with XML, because it's a standard way to express the data schema, we just validate the schema using standard XML technology. The schema is enough."
continued...page 2
Photo of Garron by Tracey Knoll
Back to This Week's Issue
Send Us Your Feedback
Top of the Page
UCLA seeking Programmer/Analyst IV in Los Angeles, CA
Transportation Security Administration seeking CIO in Arlington, VA
Comcast seeking Tier 4 CRAN Network Engineer in Chelmsford, MA
SMDC Health System seeking Applications System Analyst 3 in Duluth, MN
ISES, Inc. seeking Techncial Support in Bridgewater, NJ
For more great jobs, career-related news, features and services, please visit our Career Center.