Delivering New Business Value To The Enterprise On A Java 2 Platform, Enterprise Edition (J2EE) Technology and Web Services Base
Delivering New Business Value To The Enterprise On A Java 2 Platform, Enterprise Edition (J2EE) Technology and Web Services Base
July 2002
Introduction
Contents
With the advent of Java™ 2 Platform, Enterprise Edition (J2EE) application
servers, companies are beginning to enjoy the benefits of an industry-standard
2 Introduction programming model that offers new levels of portability, flexibility, reuse
2 What are Enterprises Services? and responsiveness. Complementing J2EE-based technology, the emerging
5 Enterprise Services and the set of Web services standards arm companies with even greater business
WebSphere software family flexibility to compete in a changing world. Simply put, Web services and J2EE-
5 An Enterprise Services scenario based technologies are good for business. The most sophisticated e-businesses,
6 Business rule beans however, need to extend these industry standards to meet important enterprise
7 Extended messaging technology requirements.
9 Internationalization
10 Shared work areas In response to the needs of the most demanding customers, IBM now delivers
12 Bidirectional CORBA connectivity new Enterprise Services that build upon Web services and J2EE technology-
13 C++ CORBA software development based standards. This white paper explains the philosophy behind Enterprise
kit (SDK) Services. It also discusses the solutions they can provide through a fictional
14 ActiveX bridge business scenario based on a hypothetical, representative enterprise customer.
15 Full integration with WebSphere Each Enterprise Service is reviewed at a high level in terms of the business and
Studio Application Developer, technical benefits that it provides. All statements regarding IBM future direc-
Integration Edition tion and intent are subject to change or withdrawal without notice, and
16 Summary represent goals and objectives only.
• Enterprise-class functionality
• Enterprise-class qualities of service
IBM also offers WebSphere Application • High availability through extreme fault tolerance and nondisruptive remote
Server, Enterprise Edition to deliver even systems management, providing an exceptionally satisfying end-user experience
greater levels of scale and manageability and supporting global business hours
for forward-thinking e-businesses. The
high-end application server includes IBM
• Enterprise-class manageability that facilitates highly dynamic system monitoring,
tuning and maintenance
innovations related to business process
and application integration.
Enterprise Services included with WebSphere Application Server, Enterprise
Edition, Version 4.1 deliver on the enterprise-class functionality requirements
discussed in the preceding list, and these requirements are the focus of
this white paper. Subsequent releases of this product will address additional
enterprise-class qualities-of-service requirements.
Function and
quality of service
Time
Figure 1. Relationship between WebSphere Application Server, Advanced Edition and WebSphere
Application Server, Enterprise Edition
Delivering new business value to the enterprise on a Java 2 Platform, Enterprise Edition (J2EE) technology and Web services base.
Page 5
Legacy
systems
Databases
ORBs
ActiveX
Application
server
Internet clients
Like a growing number of today’s large enterprises, Dynamic Corporation has made
a strategic commitment to J2EE-based technology as an important step toward
meeting these challenges. In an architecture centered on J2EE-based technology,
you can view the application server as a distributed business logic hub. Figure 2
illustrates a simplified view of an e-business architecture, placing special emphasis
on the application server dimension. The remaining sections of this white paper
outline specific enterprise requirements faced by Dynamic Corporation’s IT profes-
sionals. In each section, you will find a description of the issues surrounding the
requirement, along with a solution that utilizes one of the Enterprise Services that
IBM delivers with WebSphere Application Server, Enterprise Edition.
Business rule beans provide a way to externalize and apply parameters to potentially
pervasive and variable business practices, maintain rules administratively and
change business behavior without exposing any code. This means that you can
change business behavior by maintaining your business rules instead of changing
your application code. Business rule beans enable developers to separate reusable
abstractions within a business domain — and base these abstractions on policies,
regulations or any other business practice that tends to change over time. Most rules
engines are inference engines. This is not the case with business rule beans, which
are actually a lightweight framework. The framework includes a number of basic
business rules, while application developers can build others. You can write rules to
derive values, classify situations based on input values and execute scripts. Business
analysts can then manage rules externally through the sophisticated capabilities for
rule modification offered as part of business rule beans technology.
Delivering new business value to the enterprise on a Java 2 Platform, Enterprise Edition (J2EE) technology and Web services base.
Page 7
This technology is different from the functionality in the Versata Logic Server
for WebSphere, which captures and executes Declarative Business Logic for
large, J2EE-based application systems. Declarative is a new perspective where the
desired result is specified in business-oriented terms associated with procedural
approaches (what rather than the technology-oriented how results, such as archi-
tecture, design, coding, testing, debugging and maintenance). Declarative logic
is executable through engines in the Versata Logic Server for WebSphere that oper-
ate within the context of WebSphere Application Server. This approach enables
many improvements in time to market and maintenance, dramatically reduces the
complexity and risk of large projects and enables nontechnical staff to participate
effectively with IT staff to deliver business systems.
Business rule beans, on the other hand, are built from a Java technology-based
perspective. Business rule beans provide a useful facility for programmers to
achieve reuse. Versata rules represent the application, whereas business rule beans
supplement the application. Business rule beans also tend to be parameter-driven —
behavior can be dynamically defined through externally maintained data values,
which is less common in Versata. Because Versata logic is extensible because it can
invoke Java methods, and because business rule beans are Java technology-based,
it is effective to use Versata and business rule beans together to form a powerful
solution for your e-business.
IBM addresses this requirement through an Enterprise Service that includes mes-
sage beans and Java Message Service (JMS) listener technology. This technology
represents an earlier version of the J2EE 1.3 message-driven beans and is virtually
identical to the functionality outlined in the J2EE-based specification. The initial
support for component and messaging integration is depicted in Figure 3. A JMS
listener running in the background pulls messages arriving in an inbound queue
into the application server. Message content is then dispatched against a general-
purpose message bean from which specific business logic can be invoked. The
general-purpose bean is actually general for a given destination queue. That is, dif-
ferent destination queues will have different general-purpose beans. This Enterprise
Service solves the common problem of managing the integration between inbound
messages and Enterprise JavaBeans technology-based operations.
Messages
General Specific
Listener message business
bean logic
J2EE server
Container
Message queue
Transactional support is also provided for the retrieval of a message from a queue.
This means that as you update resources during subsequent application server
processing, you can roll back any failures that are encountered, along with the
original message. This helps ensure that the system manages message handling and
subsequent processing automatically and with high integrity. The transactional solu-
tion represented here builds on the JMS/XA support already included in WebSphere
Application Server, Advanced Edition. Message beans and JMS listener technology
do not provide a complete answer because developers must be proficient in JMS
programming. A subsequent release of this Enterprise Service is planned to deliver
even broader solutions that:
Internationalization
Dynamic Corporation wants to efficiently build a single Web application, capable of
conducting transactions in several countries around the world. The company wants
to run the application from a centralized location. As a result, Dynamic Corporation
requires an application server that recognizes different client time zones and differ-
ent client locales. Specifically, objects that return or use a client’s local time must be
aware of the time zone with respect to that client. Moreover, Dynamic Corporation
wants to express dates and times correctly for clients according to the cultural
conventions of each locale. Dynamic Corporation also desires that currency and
decimal points be displayed correctly because the representation of these differ across
national boundaries. Finally, the company wants product lists to display correctly as
sorting rules vary by language. These concepts are illustrated in Figure 4.
p.m. a.m.
How does this Enterprise Service relate to the WebSphere Translation Server?
WebSphere Translation Server is compatible with language translation of Hypertext
Markup Language (HTML), plain text and IBM Lotus® Notes® files. The Interna-
tionalization Enterprise Service does not do any translation. It only identifies locale
and time zone information, which means that a program using internationalization
Enterprise Service could apply appropriate translation on its own, if necessary. It
could actually invoke WebSphere Translation Server to do this.
EJB
Session/Entity
EJB
Session/Entity
Servlets EJB
and JSPs EJB Session/Entity
Session/Entity
Figure 5 graphically illustrates how a shared work area might be used in practice.
A servlet initially writes some information to a work area. This information flows
along the thread of execution to an EJB module, which then reads the information
and passes control to a second EJB component that chooses to ignore the work
area. A third EJB component receives control, and it reads the work area again. It
is significant that work areas flow implicitly because:
• The second EJB module in this example is not required to receive, transmit or even know
about the work area information. The work area does not affect its interface. None of the
EJB components is required to adapt its external interfaces to account for the existence of
the work area. This promotes flexibility and keeps the interfaces clean.
• Work areas are always immediately accessible and highly efficient — there is no need for
any calls to a shared database, directory or remote object. This reduces bottlenecks and
promotes high performance.
In the last part of Figure 5, yet another EJB component chooses to write additional
information into a work area. It actually pushes information to the work area that
effectively overrides the previous value. Other parts of the distributed application
then process the new value, and the original value does not resurface until control
returns to the point at which the new value was written.
Delivering new business value to the enterprise on a Java 2 Platform, Enterprise Edition (J2EE) technology and Web services base.
Page 12
Calls from either servlets or EJB components to CORBA are especially interesting.
You can issue these calls using either coexistence mode or interoperability mode.
With coexistence mode, you invoke distributed objects using a third-party ORB run-
ning in the WebSphere software platform environment. This enables use of the
third-party ORB bootstrapping protocol and vendor-specific APIs. With interopera-
bility mode — which is the preferred mode — you invoke distributed objects using the
ORB included with WebSphere Application Server. This enables the propagation of
service contexts, such as in-progress transactions. Because these service contexts are
potentially usable by the third-party ORB receiving the calls, you may, for example,
be able to include processing performed by the third-party ORB within the scope of a
WebSphere software-initiated transaction. In addition, because interoperability
mode uses the embedded WebSphere Application Server ORB, you automatically
enjoy the performance, stability, scalability and interoperability IBM provides in its
standards-compliant implementation of the Internet Inter-ORB Protocol (IIOP).
Delivering new business value to the enterprise on a Java 2 Platform, Enterprise Edition (J2EE) technology and Web services base.
Page 13
Figure 6 illustrates how you can use an IBM-based CORBA server behind or in front of
the J2EE-based server. Customers can also leverage the SDK to build a C++ CORBA
client, without needing to create a CORBA server at all. This provides a simple and
effective way to connect a C++ desktop application to the J2EE server, for example.
EJB
session or
entity
IBM CORBA
Servlets
and JSP C/C++ assets
EJB
IBM CORBA
C/C++ assets
Accessing J2EE services from a C++ ORB requires that both standard and applica-
tion-specificJava classes exposed through EJB interfaces be duplicated in the C++
runtime. To facilitate Enterprise development, IBM’s C++ CORBA SDK includes
a value-type library that defines IBM C++ CORBA classes corresponding to a
number of standard Java classes. These include Boolean, Character, Integer, Float,
Vector, List, and others. This value-type library is not compatible with ORBs from
other vendors. Consistent with the strategic emphasis on J2EE-based technology
at IBM, the C++ CORBA solution provides a basic CORBA environment. It can
bootstrap into the J2EE-based name space, and it can invoke J2EE technology-
based transactions. However, it does not ship with its own naming and transaction
services. For this, a C++ CORBA client or server relies on the J2EE technology-
based environment as a service provider. The C++ CORBA technology will first
be provided on Sun Solaris operating system (Forte, Version 6.0 C++), IBM AIX
(VisualAge® for C++, Version 5.0), and Microsoft Windows NT and Microsoft
Windows 2000 (Microsoft Visual C++, Version 6.0).
ActiveX bridge
Looking back at the Dynamic Corporation topology, a requirement exists for J2EE-
based connectivity from ActiveX (in fact, from both ActiveX clients and ActiveX
servers). Like many other companies, Dynamic Corporation has made a consider-
able investment in COM-based technologies, such as Visual Basic, Visual C++ and
Active Server Pages (ASP). It is important that newly developed EJB modules be
made accessible from the world of ActiveX.
IBM delivers support for ActiveX integration with J2EE-based platform through
an ActiveX bridge. The bridge makes Java-based classes dynamically available
through ActiveX interfaces. This idea is depicted in Figure 7.
EJB
Bridging to EJBs Session/Entity
MTS
Visual
Basic
Figure 7. The ActiveX bridge provides a generic ActiveX-to-Java-based classes bridging solution.
Delivering new business value to the enterprise on a Java 2 Platform, Enterprise Edition (J2EE) technology and Web services base.
Page 15
Both the Visual Basic client desktop application and Microsoft COM-based server
(MTS) utilize the IBM-supplied bridge to communicate with a WebSphere software
EJB module. ActiveX automation interfaces are available by means of Visual Basic,
VB scripting and so on. The bridge presently consists of a C++ DLL that calls some
Java-based code using Java Native Interface (JNI). The Java technology-based code
invokes the services of either a J2EE technology-based client container (preferred
on thick desktops) or a Java proxy (required on the Microsoft server), which in turn
make a call to a Java ORB. The ActiveX bridge is available on both Windows 2000
and Windows NT, although this is in one direction only (as shown in Figure 6).
Through the bridge, an ActiveX environment can also use J2EE APIs, such as Java
Naming and Directory Interface (JNDI), Java Database Connectivity (JDBC), JMS
and JavaMail. The bridge supports both workload management and security.
JNI SOAP
Today Tomorrow?
The Intelligent Corporation is an interna- One of the quickest, most cost-effective ways to e-business is to reuse
tional enterprise that plans to build a existing applications. WebSphere Studio Application Developer, Integration
globally accessible Web-based order-ful-
Edition and WebSphere Application Server, Enterprise Edition enable Java
fillment system. The corporation wants to
reward its largest customers with higher developers to build and deploy adapters quickly and easily to provide access to
levels of end-to-end service. Intelligent enterprise resources from a Java application. Application adapters quickly and
expects to accept requests from brows- easily extend enterprise applications to e-business — helping leverage current
ers and call centers that batch requests
resources to build new applications. WebSphere Studio Application Developer,
asynchronously. The company will deter-
mine shipment dates through dynamic Integration Edition helps reduce the risk, complexity and cost of creating and
scheduling algorithms that reflect both customizing application adapters and helps eliminate the need for extensive
regional policies and multiple time zones. coding. It provides enterprise Java developers and application integration
As part of the fulfillment process, Intelli-
specialists with powerful graphical tools for the rapid creation of application
gent wants to query and update a number
of heterogeneous systems with integrity adapters. Because applications are often customized, the tool also enables
(although some of these systems are not fast customization of the adapters, generally without the need for advanced
subject to normal transactional coordina- programming skills.
tion). In a few cases, it must also link
libraries of C and C++ code into the solu-
tion. And finally, Intelligent must interface WebSphere Application Server, Enterprise Edition and WebSphere Studio
an existing set of front-end applications Application Developer, Integration Edition also offer support for service chore-
with the fulfillment system (and most of ography through the creation of visual flows. For example, developers could
these applications have been written
create basic service definitions through adapter tooling that visually connects
using Microsoft technologies).
Java technology-based applications to EIS. These basic services could be choreo-
What application server should Intelli- graphed into composed services that perform higher-level business activities.
gent Corporation choose? IBM
Visually linking these interactions can make it easier for developers to create
WebSphere Application Server, Enter-
prise Edition can deliver the Enterprise applications and to preserve the flow structure of the application when under-
Services needed to solve the demands of lying service implementations change over time. This service choreography
the most complex e-businesses. provides an interactive technology to allow businesses to be more efficient and
productive by automating workflow.
Summary
With the release of WebSphere Application Server, Enterprise Edition, Version
4.1, IBM continues its tradition of providing high-qualities of service to enter-
prise customers. WebSphere Application Server, Enterprise Edition is supported
by an evolving set of Enterprise Services that delivers the functionality and
qualities of service that competitive businesses need to solve the most demand-
ing business and technical problems. Customers who invest in the WebSphere
Application Server, Enterprise Edition will buy middleware that extends the
core WebSphere runtime and delivers leading-edge functionality and higher-
qualities of service.
As a result, sophisticated customers with high-end needs will be able to inte-
grate, innovate and adapt quickly in response to relentless competitive forces.
WebSphere Application Server, Enterprise Edition customers will leverage their
existing investments and build upon a reliable infrastructure that positions
them for leadership and growth. © Copyright IBM Corporation 2002
IBM Corporation
Software Group
For more information
Route 100
For more information about WebSphere Application Server, Enterprise Edition, Somers, NY 10589
U.S.A.
contact your local IBM representative or visit ibm.com /websphere
Produced in the United States of America
07-02
All Rights Reserved
G325-2024-00