IBM Application Framework for e-business
Application Server Software
In the new wired
world, servers bear much of the workload. Servers are where the business
logic of e-business applications runs to provide end users with the data,
services, and functions they need. It's important to make the server environment
flexible. For example, you might start by offering customers access to
their account information or inventory information. But, over time, you
are likely to want to integrate that application with other systems in
your company—for instance, a workflow application designed to escalate
and resolve customer service requests and problems.
This
paper focuses on the application server software layer of the Framework
that provides the core functionality for developing e-business applications.
These services help businesses collaborate effectively, maintain and access
information efficiently, and conduct transactions reliably in both intranet
and extranet environments. They extend and enhance the Web application
programming environment and provide the base on which higher-level e-business
application services are built.
The services supported
in the Framework's application server software layer include the HTTP server,
database and transaction services, mail and community services, collaboration
services, and messaging services. The Framework enables you to start with
the services that meet your immediate needs—and then add to that as your
solution grows. All of these services use the Framework infrastructure,
are accessible through JavaTM classes or JavaBeans, and support
applications written to use the Framework programming model. These services
can be integrated to build e-business solutions.
HTTP Server
The HTTP server is
the focal point for integration in the Application Framework for e-business:
-
It is the entry point
to server functionality supporting HTTP and IIOP requests from Framework
clients.
-
It supports the mechanisms
for locating and invoking business logic, implemented as servlets, on the
logical mid-tier server.
-
It hosts the connectors
that link the Web to existing enterprise applications, data, and systems.
-
It coordinates, collects,
and assembles Web pages composed from static and dynamic content and delivers
them to Framework clients.
-
It operates based on
an understanding of user preferences.
The Framework's use of
standard interfaces and protocols allows substitution of any vendor's Web
server implementation, for example, Web servers produced by IBM, Microsoft
or Netscape. The Object Request Broker incorporated in the HTTP server
supports IIOP to allow JavaBean components to communicate client to server,
and server to server to satisfy a user's request. This enriches the environment
provided by a simple Web server. For example, it allows multiple servers
to work simultaneously and asynchronously on a single request. One may
check inventory, another check credit, and yet another provide news or
promotional material on related areas.
Mail and Community
Services
The Framework's mail
and community services provide the application solutions that most users
and companies need in today's dynamic environment: e-mail messaging, calendaring
and group scheduling, chat, and newsgroup discussions. These applications
enable businesses to forge closer relationships with customers and partners,
and strengthen internal teams. The Framework's community services support
standard Internet technologies and protocols and are accessible from all
standards-based clients. The standards supported include:
-
SMTP, POP3 and IMAP4
for e-mail
-
IRC for chat
-
NNTP for newsgroups
-
iCalendar object model
and protocols for calendaring and group scheduling
-
LDAP for access to directory
services
-
X.509 certificates for
authentication
Native support for a
variety of message transfer protocols, including SMTP and X.400, enables
these community services to work with other mail servers. In keeping with
the Framework's commitment to flexibility and openness, gateways are provided
to support other significant inter-enterprise communication standards.
Collaboration
Services
The primary focus
of collaboration services is to provide a rich shared virtual workspace,
and to support the coordination of business workflow processes. Collaboration
services integrate information from any resource, manage what is shown
to users, confer a measure of interactivity between information and the
user, and manage the content through a business process in which employees,
customers, and business partners can participate. The de facto standard
for implementing collaborative applications is defined by the Lotus Notes
API.
Collaboration services
accelerate the flow of information through an organization's decision making
and approval processes. The document object store is a critical element
in collaboration services:
-
It contains operational
data and definitions of behavior such as actions and agents, all presented
as viewable documents. This enables users to define how information is
presented, processed, protected, and distributed.
-
It supports an integrated
development environment that allows information to be retrieved and saved
from transactional, application, and database systems, and it allows the
user to define behavior appropriate for clients that use HTTP for browsing
on the Web, for Notes clients, and other clients written to the Notes API.
Additional definitions of behavior and data in the object store can be
programmed with APIs expressed as Java classes and JavaBeans.
-
It is optimized to efficiently
distribute and manage business information of all types—tabular data (perhaps
pulled from a relational database or a spreadsheet), formatted text, Web
pages, graphics, links to multimedia objects such as scanned images and
faxes, voice and sound, and video.
-
It enables facilities
such as:
-
Full text search
-
Document links
-
Version control that
tracks document changes from multiple users
-
Security (at the field,
document, or entire document store level)
The Framework's collaboration
services use the document object store for everything—including information
storage, workflow, and custom applications. The object oriented collaboration
services complement the support provided by relational databases and traditional
transaction servers for e-business applications. For example, collaborative
applications excel at connecting existing structured business data and
transaction systems with people to create new business processes and workflows.
The Framework's collaboration services are also optimized for environments
where the network is unreliable, network bandwidth is constrained, or large
numbers of end users are mobile and disconnected from the network for significant
periods of time.
Database Services
The Framework's database
services integrate the features and functions of an object-relational database
with those of the base Web server. This provides a facility for managing
both the operational data and multimedia content used to support intelligent
decision-making within a company and to conduct business on the Internet,
an intranet, or an extranet.
The open application
development environment supported by the database services
-
Leverages existing business
logic to build new Web-based applications
-
Supports development
and execution of database application programs, stored procedures and user-defined
functions using the Java and JavaBeans programming model
-
Provides query and update
access to database information using SQL, SQLJ, and JDBC interfaces; this
includes
Web applications updating the database using two-phase commit
-
Integrates transaction
services with databases using the Open Group's XA reference model standards
for integrating transaction services with databases
The Framework's database
services
-
Manage both traditional
data (record-structured alphanumeric data) and nontraditional data (such
as text, multimedia, spatial, etc.) along with user-defined data types
for specialized business requirements;
-
Combine the ability to
define complex data types and associated functions with relational database
features such as multiple views, structured query and fine-grained update
concurrency;
-
Store the methods and
procedures for operating on data along with the data itself increasing
the value and usefulness of the data by capturing its semantic content
in the database. Storing operations on data along with the data also improves
data integrity by promoting code; reusability and eliminating code redundancy
among applications accessing the database.
-
Record and enforce business
policies that apply to data, for example by providing automatic validity
checks.
Transaction Services
The Framework's transaction
services extend the Web server by providing a highly available, robust,
expandable and secure transactional application execution environment.
With these capabilities, businesses can provide new services that can expand
to meet their growing markets and peak loads. Through the ability to replicate
servers and distribute client load, applications can be built for any number
of users, and scale to service the global demands of millions of users
throughout the Internet.
The Framework's transaction
services support development and execution of both procedural and object
oriented transactional application programs. Standards and capabilities
supported for application use include
-
Enterprise JavaBeans
and Java Transaction Services (JTS), for transactional application support,
-
OMG Object Transaction
Services, Object Concurrency Control Service, and the full set of OMG object
services,
-
Open Group TxRPC for
integrating transactions with RPCs and the XA reference model standards
for two phase commit,
-
CICS APIs.
Transaction services
also provide the ability to secure applications, allowing only authorized
users to access appropriate services. Flexibility in defining and enforcing
access enables businesses to market varieties of services, each targeted
to the appropriate audience.
Messaging Services
Messaging services bring
the power and flexibility of Message Oriented Middleware (MOM) to the Framework.
Unlike e-mail messaging - which is concerned with the production and handling
of messages that are ultimately destined for a human reader - MOM (or Business
Quality Messaging as it is sometimes called) is concerned with messaging
between applications.
Messaging services allows
an application to send messages to other applications, or receive messages
from other applications, and provides a queuing mechanism that can reliably
hold those messages, should either partner application be unavailable.
The application can choose a quality of service for message delivery -
messaging services will undertake to deliver each message once and only
once, even in the event of system or network failure, should the application
require this. A wide range of different message types can be sent: for
example a message might be an application-defined request or event, a text
message, a Java object, a Cobol datastructure, an interchange document
for an ERP system, or a member of an industry-standard message set.
Message services can be put
to number of different uses:
-
To add asynchronous processing
to a web application. While many web interactions are synchronous in
nature (for instance database queries), there are also many cases where
application reliability and responsiveness can be improved through the
use of asynchronous processing. For example when a customer places an order
from a Web browser, you might wish to acknowledge receipt of the order
by sending a reply to the browser before the application has completed
order-processing.
-
To integrate the web application
with other enterprise applications and processes. In most organizations
business information resides on a multiplicity of different systems (a
recent survey of major organizations reported an average of 7 systems).
In general these systems and the applications involved were not designed
to communicate with each other - they were designed at different times
by different people. Messaging services provides both the underlying transport
and transformation and rules engines that allow these systems to interoperate
with each other, and to be integrated via a Web application.
-
To provide intercompany electronic
communications, for example via an extranet. Organizations are increasingly
recognizing the importance of integrating their internal systems with those
of suppliers and customers (electronic value chain integration). Traditional
communications are often message based, and messaging services provides
reliable electronic alternative to mail or fax-based communications.
The Framework's messaging services
will provide implementation of the Java Message Service (JMS) API and compatibility
with the Enterprise JavaBean runtime environment.
Summary
The application server
software layer of the Application Framework for e-business helps businesses
collaborate effectively, maintain and access information efficiently, and
conduct transactions reliably in both intranet and extranet environments.
The services provided in this layer extend and enhance the Web application
programming environment and provide the base on which higher-level e-business
application services are built. The Application Framework for e-business
enables you to start with the services that meet your immediate needs—and
then add to that as your solution grows.
International Business
Machines Corporation 1998
IBM Corporation
Somers, NY USA
All rights reserved.
IBM is a registered
trademark of International Business Machines Corporation in the United
States and/or other countries.
Lotus and Notes
are registered trademarks of Lotus Development Corporation in the United
States, or other countries, or both.
Java and all Java-based
trademarks and logos are trademarks or registered trademarks of Sun Microsystems,
Inc. in the United States and/or other countries.
Microsoft is a
registered trademark of the Microsoft Corporation in the United States
and/or other countries.
Netscape is a registered
trademark of the Netscape Communications Corporation in the United States
and/or other countries.
The Open Group
is a trademark of the The Open Group in the United States and/or other
countries.
|