HexMac CORBA White Paper

This white paper describes HexMac Software System's plans to integrate CORBA in the next generation of its products -- starting with a short introduction to the Common Object Request Broker Architecture.

The New Buzzword

Companies such as Netscape present CORBA as the "next big wave in developing the Internet". CORBA is no product to buy, but a development platform for complete distributed objects -- extending applications written in different programming language across computer networks, component boundaries or operating systems. Software components using this technology are able to interchange information and can be used together to build powerful distributed applications.

The Common Object Request Broker Architecture was defined by the Object Management Group (OMG) with powerful members including Apple Computer, Digital Equipment Corporation, Hewlett-Packard, IBM, Microsoft, Novell, Oracle or Sun: More than 700 companies are currently implementing CORBA-based information technology solutions and thousands of CORBA applications are currently in use.

CORBA has been around for years in corporate intranets, but as the Java programming language is becoming popular and a Java virtual machine exists for nearly every platform, CORBA proofes the underlying concepts of an object-oriented, component-based future: Java provides an object-oriented environment for producing small software components running on any operating system which can be used within intranets or over the Internet.

The Architecture

The Object Management Group defined an architecture which connects an application with the objects it wishes to use through a CORBA Object Request Broker (ORB): The application does not need to know whether the object resides on the same computer or on a remote computer elsewhere on this planet -- it needs to know only two things: The address of the object to talk to and the interface to use for calling the object. The ORB handles the dirty work of locating the object, routing the request, and returning the result -- hiding the details of the remote execution behind a nice object-oriented programming interface.

Modularity

CORBA only defines the interfaces between modules and makes it very easy to change the implementation of different objects: Changing an object's implementation or even switching to the implementation of another company does not affect any other object or application, because the interface of the modified object stays the same (Fig. 1).

Fig. 1: Changing the implementation of one object doesn't change its interface.

Interfaces for CORBA modules are written in IDL -- the Interface Discription Language defined by the OMG -- and implementation specific utilities are used to generate wrappers to these interfaces for the actual programming languages.

CORBA Services

A set of interfaces is provided by the OMG as CORBA Services: Definitions for commonly used services which should be implemented the same way in different CORBA products. These standard interfaces handle security issues and tasks like how implementations identify themself or how other objects can be found. They also define high level objects, like services for electronic commerce, powerful business objects to access proprietary business software or frameworks for healthcare solutions. These services are defined by spezial interest groups to make complex software compatible between different manufacturers and split complex systems into smaller objects which are easier to maintain.

HexMac CORBA Vision

There are many ways how CORBA objects can be used in the fast growing market of Internet publishing and HexMac Software Systems has made CORBA a cornerstone technology in its development: We realize the big potential behind CORBA in connecting all our related software products.

HexBase

HexBase is a high-performance Unix database specially designed for the Web and used on 5 out of 10 largest web sites in Germany. The forthcoming version of HexBase will have a Java interface with the ability to connect to CORBA services on local or remote machines.

Fig. 2: The HexBase Scripting Language calling methods of CORBA objects and dynamically assembling HTML for Web browsers.

This extension will make HexBase even more attractive for corporate intranets and for bringing data of proprietary software to the Web: HexMac can encapsulate legacy systems into delegating CORBA objects and access the software from the dynamic scripting language of HexBase (Fig. 2).

Open Systems

Several existing extensions to HexBase can be made available to other systems by providing an additional CORBA interface: AirGate for example is a gateway server between the SABRE travel reservation network and the HexBase Web database. The SABRE Group operates one of the largest privately-owned computer systems with a high-security data center located in Tulsa, Oklahoma. This data center runs SABRE in a mainframe operating environment which is interfaced by HexBase AirGate to hide all the ugly details of parsing X.25 transfers between the mainframe and the client.

The forthcoming version of AirGate will use CORBA to define an interface which is not longer bound only to HexBase, but can also be accessed from any other CORBA-capable system: This makes the system available to standalone applications or other server solutions like the Netscape Enterprise Server.

Java Applets


Fig. 3: Communication between Java Applets and CORBA Objects.
With a CORBA-enabled browser like Netscape Communicator, users can directly access services of a vast multitude of CORBA objects in corporate intranets and all over the Internet. Java Applets are the interface of choice if a highly specialized userinterface is needed and will be used by HexMac Software Systems for example to do remote configuration of its software products (Fig. 3).

Other applications include new versions of popular products like HexWeb Index, which is part of the HexWeb XT distribution: HexWeb Index indexes the archives created with HexWeb XT from articles written in QuarkXPress and assembles tables of content for these articles. These tables of content are then copied to the Web server and used by many news papers all over the world to automatically create their homepages. HexWeb Index CORBA will provide the same features as the currently shipping version, but will work on the remote server: The userinterface to the application will be a Java Applet running in Netscape Communicator.

Reality Check

The first product of HexMac Software Systems using CORBA is already there: HexPage is a pager server using the standard protocols TAP and UCP for connecting to remote service centers and sending SMS messages to pagers and cellular phones.

HexPage runs on a Unix server and has a Java Applet as its userinterface to manually send messages or configure the server: After setting up the CORBA server, no further work has to be done via terminal but configuration takes place in the nice environment of Netscape Communicator (Fig 4).


Fig. 4: The User interface of HexPage: A Java Applet to configure the service centers running in Netscape Communicator

The most important part of HexPage is its interface to HexBase, which can be used to automatically send messages from the Web database: Subscribers can receive information like weather forecast, stock-market prices, news or sudden changes on the fly.

HexPage demonstrates the power and the reliability of CORBA and is a promising sample of new applications to come from HexMac Software Systems.


Copyright 1997 by HexMac Software Systems. All rights reserved.
Written by Jan Ulbrich.
DHTML, XML, XSL, DSSSL, JAVA, QuarkXPress to HTML,
XTension, PFR, Dynamic Fonts, Netscape, JAVA Editor, e-commerce, Web Publishing, Challenger, HexWeb,
Typograph, Editorial System, HPS, HexBase Publishing System, Database, Oracle,
JDBC, Informix, Sybase, Dreamweaver, WYSIWYG Editor, Photoshop, QuarkXPress,
K2, Adobe, PDF, SET, SSL, Apache, Consolidator, Shopping , lastminute, travel, StyleSheets,
airplane, tickets.