TechRepublic: How XML will resolve the COM versus CORBA debate and end world hungerMar 18, 2000, 15:33 (1 Talkback[s])
(Other stories by Tim Landgrave)
"Object models like COM and CORBA have two basic sets of functionality: interfaces and plumbing. At an interface level, they each define how an object can be queried for its available methods, and then define the mechanism for calling those methods and returning the results. The plumbing level deals with the internal workings of the object and its interaction with the underlying operating system that hosts it. Building systems with either of these object models involves building application server farms that sit between a set of User Interface machines (either Web servers or PCs that can make direct calls to the application servers) and a set of database servers (that can be databases like Oracle and SQL Server, systems like AS/400s, or Mainframes using SNA as a transport protocol)."
"The user interface machines use the object model's native query interface and method calling services to gain access to the services offered by the application servers. But how can we allow any Web server or other external program to make calls to the application servers without having to know anything about the object model's native query interface or method calling services? Now we can leverage all the work we've done developing our internal systems and allow external systems to use our application servers without resorting to custom programs or costly custom interfaces."
"This isn't as far-fetched as it sounds. I've helped companies use Web technology to hook together their current systems. For example, a catalog company collects their orders on a Web site, but then uses HTTP to call a CGI script on their AS/400 to actually place the order. The CGI script on the AS/400 simply calls the existing COBOL program that places orders and passes it the query string information to place the order. Unfortunately, these system interfaces are hard coded and require intimate knowledge of both systems in order to make them work together properly. But by using XML to define the interfaces and any custom object types, we can make the process more universal and accessible."