First look special: Oracle Application Server

Consult the Oracle for company applications. Does the revamped application server from Oracle have enough new features to win over a sceptical user base? asks Eleanor Turton-Hill

WEB-BASED applications have taken on varying degrees of complexity over the past few years.

Many businesses use the Internet merely as a means of publishing corporate information to their customers or marketing their products. Others have chosen to develop Internet applications which provide a service to their customers or connect with vendors or suppliers. Even more committed to Internet technology are those who have developed web-based applications to carry out their core business transactions.

As the web matures, and as companies begin to build more robust online applications, a massive demand is growing for content management tools.

Internet business applications are becoming more sophisticated and therefore increasingly difficult to manage. In cases where web-based applications have become mission-critical, server performance, response time and general reliability are paramount.

If one thing has become clear, it is that simple HTML tools and file-based web servers are not up to the job. Enter the application server ? a new buzzword in network computing and one being pushed by Oracle, which has just unveiled its newly revamped Web Application Server under the guise of Oracle Application Server (OAS) 4.0.

Essentially, OAS 4.0 is a middleware server providing the infrastructure for the development of web applications.

Network Computer Architecture

OAS sits at the heart of Oracle?s Network Computing Architecture (NCA), the company?s three-tiered computing model. With OAS, Oracle is trying to promote a new technological hierarchy where the client/server model will be replaced by a less complex, more manageable system, and one which will be better suited to the needs of today?s Internet business.

The original idea behind client/server architecture was to distribute the processing power and storage space required to run an application between desktop and server machines.

In practice however, the distribution of labour idea has been fraught with difficulty.

PCs have become over-burdened with the business logic which manipulates server-based data, a problem known as the ?fat client? syndrome, and the model has proved difficult and expensive to maintain.

The new architecture claims to solve these shortcomings by separating the presentation of applications from the databases themselves, so that the two layers can be managed independently.

In the middle of these two layers sits the application server which manages communications between the user and the database delivering information and utilities to the front-end via a conventional web browser.

In effect, this middle layer is a web application manager. It controls the flow of data between the front- and the back-end, protecting the database from being swamped by user requests.

OAS also provides database and legacy access, an object request broker, network services and message-oriented middleware.

New components

Many of the capabilities of OAS are new to the product, but they are by no means new inventions. They are the kind of capabilities which would normally be provided by middleware products such as object request brokers, transaction processing monitors or message queuing software.

What OAS does is to integrate all of these facilities into a single product combined with support for the industry?s latest development models and languages, including Corba 2.0, Internet Inter-Orb Protocol (IIOP) and Enterprise JavaBeans.

Having such a wide range of languages and models catered for means that OAS has the potential to offer a viable single integrated platform for Internet-based computing and application deployment. The product also offers a robust web server, support for distributed transactions and integration with both Oracle and non-Oracle legacy databases.

OAS has a fault-tolerant architecture and improved scalability thanks to the implementation of multithreading. It also includes new algorithms to support dynamic load balancing, fail-over, and recovery features. Load balancing can be defined on a system basis ? a crucial element of the product?s functionality. New hosts can be added to an installation without disrupting the operation of the load balancing process.

The product ships in two versions, the Standard edition and the Enterprise version. The latter, as its name implies, provides facilities for large global corporate applications including the ability to support transactional capabilities.

This particular area has changed quite radically from the previous version 3.0 of the product, which relied upon the transaction management capabilities of the main Oracle database in order to carry the core of a process through multi-step transactions.

The big difference in the new version of OAS is that the improved transaction management features can be implemented across multiple databases. In an organisation which has data stored in many different database systems, OAS can now be implemented as a universal platform for integrating these disparate resources.

The implementation of transaction management facilities in OAS is dependent upon the Corba (see box opposite) object transaction services (OTS). As a developer, the benefits of Corba are realised in the facilities provided by wizards.

Developer tools

OAS has also been integrated with Oracle?s application development tool, JDeveloper, which provides the necessary tools for Java development. The JDeveloper Suite, released three months ago, provides developers with a set of products to create and maintain component-based database applications for use across the Internet.

Using JDeveloper, Java programmers are able to take advantage of the capabilities of OAS and Oracle 8 to provide a powerful toolset for creating Internet applications.

The product supports open Internet standards such as JavaBeans, Corba, IIOP, Java database connectivity (JDBC) and Java foundation class (JFC).

The creation of JDeveloper code is boosted by the provision of Wizards which allow developers to convert any Java class to a Java Bean, or even to a server-side Corba component. Once put in place this code dynamically generates HTML pages to any client running a standard web browser.

Future directions

Beyond the wide reach of OAS, the next version of the Oracle database, Oracle 8i will include support for Java-based stored procedures which will enable Java code to control the database, as well as its own Java virtual machine which allows execution of Java code on the database.

In the future, OAS will support Microsoft?s Common Object Model, which allows Microsoft Visual Basic programmers to develop with the Oracle product as well.

Overall, Oracle has created a useful and legitimate product in the guise of OAS. The challenge for Oracle will be to promote this infrastructure to businesses not already fluent in the Oracle product range.

At a glance: Oracle Application Server 4.0

What it is: Oracle Application Server 4.0 allows company-wide web applications to be run from a single server

Price: To be confirmed

Contact: Oracle, (0118) 924 0000 www.oracle.co.uk and technet.oracle.com

Computing Verdict: OAS offers a massive variety of services with which programmers will be able to create web applications, drawing on a mixture of data sources and legacy applications. The challenge for Oracle will be whether it can market the product beyond its existing customer-base and entice new users to its obvious advantages

Object technology ?wraps? up presence

The Internet provides a powerful catalyst in the push towards a component-based software architecture. The intention of object technology is to speed up the application development process by creating complete solutions from reusable components or objects. The Object Management Group (OMG), a body consisting of more than 800 companies, developed Corba, a standard which specifies how software components, regardless of the language they have been written in, should be ?wrapped?. This wrapping defines a set of methods or a set of ways in which it can be used in a program. Without a standard wrapping it would be impossible to distribute components.

Using the Corba standard, components can be kept on the same server or distributed across a network hosted on object request brokers (Orbs) which communicate using a protocol called IIOP (Internet Inter-Orb Protocol). All of these elements enable components to make calls to other components located anywhere on the network, thus masking the underlying communications technologies between clients and servers. This is central to the whole network computing philosophy where objects can interact freely with each other, regardless of where they physically reside.

The deployment of Corba objects will be crucial to the way that applications are developed in many organisations, as it will allow them to implement application logic as reusable objects or components that can be called by other objects or components in a distributed network environment. In the next generation of web applications, the reuse of objects will be vital and OAS, with support for Corba, Java, and the web, should provide the means for doing that in many environments.

The support of Corba also provides the tools for integrating legacy code with new components. A legacy application can be left unchanged and simply wrapped and given a new interface so that it can be used by existing or new components. Support for the Enterprise JavaBean (EJB) has also been included in OAS. This is a standard which provides a component model for packaging objects on a server. An EJB is a Java program which accesses Java classes specific to network services such as security.