Home Programming IBM WebSphere Application Server 8.0 Administration Guide

IBM WebSphere Application Server 8.0 Administration Guide

By Steve Robinson
books-svg-icon Book
eBook $39.99 $27.98
Print $65.99
Subscription $15.99 $10 p/m for three months
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
eBook $39.99 $27.98
Print $65.99
Subscription $15.99 $10 p/m for three months
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    WebSphere Application Server 8.0: Product Overview
About this book
Administrators require a secure, scalable, and resilient application infrastructure to support the development of JEE applications and SOA services. IBM’s WebSphere Application Server is optimized for this task, and this book will ensure that you can utilize all that this tool has to offer with the exciting new features of IBM WebSphere Application Server 8.0.IBM WebSphere Application Server 8.0 Administration Guide is fully revised with details of the new functionality of WebSphere Application Server 8.0, including the new installation GUI, managed deployment, and HPEL. With this book in hand, you will be equipped to provide an innovative, performance-based foundation to build, run, and manage JEE applications and SOA services.IBM WebSphere Application Server 8.0 has been tuned for higher performance out of the box, and numerous enhancements have been made to give you as an administrator more options for increasing runtime performance. This book will allow you to utilize all of these features, including HPEL logging and disabling WebSphere MQ Messaging. You will be taken through how to configure and prepare WebSphere resources for your application deployments, and by the end of IBM WebSphere Application Server 8.0 Administration Guide, you will be able to successfully manage and tune your WebSphere 8.0 implementation.
Publication date:
October 2011
Publisher
Packt
Pages
496
ISBN
9781849683982

 

Chapter 1. WebSphere Application Server 8.0: Product Overview

WebSphere Application Server, often referred to simply as WAS, is a JEE-compliant application server platform. JEE stands for Java Enterprise Edition and was previously referred to as J2EE. JEE application servers provide functionality to deploy fault-tolerant, distributed, and multi-tier Java software. They also provide the runtime environment and management interface to manage the many modular components that make up JEE applications. Before we begin to look into the specifics of WebSphere Application Server 8 administration, it is important to understand what the product is, why it is often the product of choice to provide a base for an enterprise JEE SOA (Service Oriented Architecture) along with support for the many Java-based standards, and how an organization can benefit from using WAS. We also need to cover some specific WAS terminology and concepts used throughout the book.

In this first chapter, we will cover the following:

  • What is WebSphere Application Server

  • Why choose WAS

  • Previous versions

  • Enhancements and capabilities

  • WebSphere Application Server architecture

  • WAS concepts and terminology

  • WebSphere Application Server products

 

What is WebSphere Application Server?


IBM WebSphere Application Server, is IBM's answer to the JEE application server. WAS first appeared in the market as a Java Servlet engine in June 1998, but it wasn't until version 4 (released in 2001) that the product became a fully JEE 1.2-compliant application server.

Over the last 10 years, since version 1.2 was released, IBM has invested heavily in WAS and it is developed with open industry standards in mind such as Java EE, XML, and Web Services. WebSphere Application Server is now IBM's flagship for the WebSphere brand and forms the base of many of IBM's extended product range.

The latest release of WebSphere Application Server version 8, is a JEE 6-compliant application server. Every new version is required to provide improved efficiency and continued compliancy with standards, allowing customers who invest in WAS to make use of the new Java capabilities of each new JEE release.

When choosing an application server platform on which to run applications and services, architects and developers need to know that WAS will support new JEE features and improved coding practices. WAS has evolved as a product with each new update of the JEE standard, and IBM has continued to provide new versions of WAS to support available features of each new JEE release.

The following table shows a simple comparison of current and previous WAS versions and its compliancy to JEE specifications:

Version

Compliancy

 

JEE

EJB

Servlet

JSP

WebSphere 8

6

3.1

3.0

2.2

WebSphere 7

5

3.0

2.5

2.1

WebSphere 6.1

1.4

2.1

2.4

2.0

WebSphere 6

1.4

2.1

2.4

2.0

WebSphere 5.1

1.3

2.0

2.3

1.2

WebSphere 5

1.3

2.0

2.3

1.2

WebSphere 4

1.2

1.1

2.2

1.1

WebSphere 3.5

1.2

1.0

2.1

1.0

 

Why choose IBM WebSphere Application Server?


JEE is an ever-changing world, and as soon as a new application server is released by IBM, new standards and approaches become available, or they become the preferred method of choice by the JEE community. Organizations who have invested in JEE technology require an application server platform that allows them to extend their existing legacy systems, and provide services-based frameworks on which their enterprise applications and systems can be based. So there is a continuing need for IBM to facilitate all the facets of the new JEE enterprise features, namely JMS, Web Services, Web Applications, and Enterprise JavaBeans, ensuring their product continues to innovate and provide the ability for their customers to extend their own core systems.

IBM is committed to ensuring WAS negates the need for complex architectures, while at the same time providing a platform for servicing business applications, process automation/workflow, and complex bus topologies as required. The WAS product is continually being updated and improved to bring in new technologies as they are released or accepted by the community as a whole.

WAS can be considered the base of your enterprise JEE application service provisioning toolbox, and can be extended with custom business solutions as required. Developers and architects want to ensure that their application designs use the latest JEE standards and programming models. Reading through the WAS product specification sheet, which can be downloaded from http://www.ibm.com/developerworks/downloads/ws/was/, you can see that there are many new features in WebSphere Application Server version 8 supporting many industry JEE API's (Application Programming Interfaces) and standards.

Let's now turn to a quick, but not so brief, overview of the new capabilities under WebSphere 8.

Note

Not all new JEE features are chosen by IBM to be fully supported in the new versions of WAS. IBM assesses every new specification, and determines the features they will implement. Sometimes their decision can be entirely commercial, that is how they can implement an IBM-specific solution within the bounds of WebSphere; other times they are influenced by their customers and/or industry needs.

 

Enhancements and capabilities


Improving WebSphere Application Server's capability offering is something that IBM is very good at. Each new release offers more support for the ever changing JEE specification and industry/community-provided Java APIs. IBM evaluates customer and industry feedback when building new versions of the WAS. These considerations influence how WebSphere supports JEE applications.

Details of new capabilities have been included in this chapter as it is important to have knowledge of what WebSphere actually supports. This is not a book on architecture; it is about administering WebSphere Application Server. However, in your job as a WebSphere administrator, you will need to provide a WebSphere environment designed by architects to support applications built by developers, who will have incorporated new JEE features in the application(s) requiring deployment. You will find yourself setting up resources to support these new APIs. You will also often find yourself debugging applications, which may not be running correctly due to conflicts of APIs packaged in the application with those already provided by WebSphere within its internals.

Note

If you require an in-depth view of what's new in WAS 8, it is recommended you visit the official WAS 8 features page at the following URL: http://www-01.ibm.com/software/webservers/appserv/was/features/. It is also good practice to review the product data sheet, which can be downloaded from the aforementioned URL.

Support for industry standards

Architects require common standards. Because IBM continually welcomes and supports new development and design approaches within the JEE application community, it gives architects the confidence that any inter-communicating systems they design for WAS 8 will communicate and work with external systems with much less effort.

An enterprise will contain many third-party systems and interfaces. By using WAS 8, companies can feel confident that their design approach will be consistent with other industry solutions, standards, and practices. This allows for quicker integration due to the fact that systems will require less design and development to interface the third-party products and systems, that is fewer barriers to integration and interconnectivity.

The following table gives a summary of key standards that WebSphere 8 supports:

Standard

Description

Java EE 6 programming model

Compliance with the latest Java EE specification, which delivers ease of use and productivity enhancements. Updates also include performance, security, and reliability enhancements delivered by the IBM Java SDK 6.0 (J9 2.6).

OSGi (Open Services Gateway initiative)

WAS 8 has updated optimized support for applications, which are designed to use OSGi, and it supports integrated bundle support.

OSGi is a module system and service platform for the Java programming language. It implements a complete and dynamic component model allowing application components to be remotely installed, started, stopped, updated, and uninstalled without requiring a reboot. It also allows an application to be dynamically extended. WebSphere implements the OSGi framework within the installation process and internal configuration.

Web 2.0

WAS 8 provides Web 2.0 to SOA connectivity allowing Ajax-based clients and mash-ups to leverage external web services, internal SOA services, and JEE assets across the enterprise.

Web 2.0 in itself is not a technology, rather a change in the approach in which software developers implement standards, models, and APIs, and the way in which end-users use web-based applications. It is hard to get exact agreement on the definition of Web 2.0, but we see it every day in the rich applications coming forth and making our web experience more dynamic. JEE vendors provide features and APIs that make Web 2.0 programming easier by removing some of the hard boundaries between web-based systems and APIs; hence, Web 2.0 is often mentioned as part of the feature set of an application server like WebSphere.

Java batch

Reuse existing skills to quickly and cost-effectively develop, deploy, and manage batch applications.

IBM SDK

Security, performance, and reliability enhancements to IBM SDK 6.0.

Service Component Architecture (SCA)

As part of the larger SOA (Service-Oriented Architecture) Foundation which is incorporated into all of the IBM software brands, SCA (Service Component Architecture) capable products, such as the WebSphere Application Server, allow architectures to benefit from the decoupling of service implementation from the details of the infrastructure. Put simply, SCA is a set of specifications which describe a model for building applications and systems using a Service-Oriented Architecture. SCA extends and complements previous approaches to implementing services, and builds on open standards such as Web Services. What this means to larger organizations is that their Enterprise Service Bus (ESB) implementations can leverage SCA with WebSphere since its design adheres to and supports industry-recommended best practice.

Communications Enabled Applications (CEA)

CEA provides a new style of application to the community. It leverages the JSR 289 standard for SIP (Session Initiation Protocol) support and provides template JavaScript widgets out-of-the-box, which are fully customizable via CSS and can be embedded into existing web and Java applications.

Session Initiation Protocol (SIP)

SIP is an industry standard suite of protocols that can be used to establish, modify, and terminate voice sessions, and is often seen in call-me now applications. Simply put, it is a standard by which voice and video media services are incorporated into JEE applications running on WAS.

JPA (Java Persistence API)

JPA provides a POJO (Plain Old Java Object) standard and ORM (Object Relational Mapping) for data persistence among applications.

JPA was defined as part of the EJB 3.0 specification as a replacement for the EJB 2 CMP Entity Beans specification. Most of the persistence vendors have released implementations of JPA, confirming its adoption by the industry and users, including Oracle TopLink, Oracle Kodo, JDO (Java Data Objects) and of course the well-known Spring Hibernate.

SAM (Simple Asynchronous Messaging )

SAM, otherwise known as "extension" provides interfaces to the IBM Messaging and Queuing middleware products using a set of libraries and some client-side code referred to as XMS. The IBM Message Service Client is an Application Programming Interface (API) that is consistent with the Java Message Service (JMS) API and is often used with client technologies like PHP.

Applications using SAM can exchange messages between other Message Service Client applications with minimal effort, which allows Open Source web-based programs to benefit and easily co-exist with IBM messaging.

SDO (Service Data Objects)

Service Data Objects is a newer model for data access developed jointly by IBM and BEA (now Oracle), and standardized with the JSR235 standard, providing a common framework for data application development. Developers no longer need to be familiar with technology-specific APIs. By employing SDO, they can access data from multiple data sources, including relational databases, entity EJB components, XML pages, Web services, the Java Connector Architecture (JCA), and JavaServer Pages (via Java Servlet API).

New features

There have been many internal product improvements for efficiency in both resource management and administration time saving. The following table gives an overview of new enhancements to WAS realized in version 8:

Feature/Capability

Description

Monitored deployments

New monitored directory-based application install, update, and uninstall of Java EE application.

HPEL

New High Performance Extensible Logging (HPEL) problem determination tools and enhanced security and administration features to improve administrator productivity and control.

Updated installation process

New simplified install and maintenance through IBM Installation Manager to improve efficiency and control.

Workload efficiency

Run the same workload on fewer servers, creating savings of 30 percent due to updates in the performance for EJB and web services.

Improved performance and high availability with WebSphere MQ

Messaging is a key part of any enterprise both in Java's JMS and IBM's specific messaging platform called WebSphere MQ. WAS continues to provide ease of integration with MQ.

Security hardening

Security domains have been improved to offer more secure protection for services provided by WAS.

Simplified exchange of user identity and attributes in Web Services using Security Assertion Mark-up Language (SAML) as defined in the OASIS Web Services Security SAML Token Profile Version 1.1.

SAML assertions represent user identity and user security attributes, and optionally to sign and to encrypt SOAP message elements.

The Organization for the Advancement of Structured Information Standards (OASIS) is a global consortium that drives the development, convergence, and adoption of e-business and web service standards.

Web Services Security API (WSS API) and WS-Trust support in JAX-WS to enable customers building single sign on Web services-based applications.

The WSS API supports Security token types and deriving keys for signing, signature and verification, encryption, and decryption.

Security auditing enhancements

Auditable security events are security events that have audit instrumentation added to the security run time code to enable them to be recorded to logs for review.

Enhanced cookie support to reduce cross-site scripting vulnerabilities and also better support for security, for example, SSO (Single Sign On) and LPTA (Lightweight Third Party Authentication).

Enhanced security configuration reporting, including session security and Web attributes.

Additional security features enabled by default.

Security enhancements required by Java Servlet 3.0.

Java Authentication SPI for Containers (JSR 196) support, which allows third-party authentications for requests or responses destined for web applications.

Configure federated repositories at the domain level in a multiple security domain environment.

Performance improvements

JPA L2 cache and JPA L2 cache integration with the DynaCache environment.

New caching features functionality for servlet caching, JSP, web services, command cache, and so on.

Improved migration support

Better support for migrating applications deployed to WebSphere Application Server 6.0, 6.1, and 7.0.

The command line tools and GUI wizard have been improved.

JDBC (Java Database Connectivity)

New and upgraded providers for database connectivity support for JDBC.

Reference table for supported standards

The following table is a quick reference, listing the new standards mentioned previously as adhered to, or provided, by WebSphere Application Server v8:

Standard

Level

Description

JEE

6.0

Java Platform, Enterprise Edition, or Java EE.

EJB

3.1

Enterprise JavaBeans (EJB) technology is the server-side component architecture for the JEE Platform.

Servlet

3.0

Servlet is a Java class in Java EE that conforms to the Java Servlet API and often generates HTML from Java code.

JCA

1.6

Java EE Connector Architecture (JCA) for connecting to legacy systems outside of JDBC.

JSP

2.0

Java Server Pages (JSP) allows HTML pages to have Java code embedded for dynamic HTML generation.

JSF

2.0

Java Server Faces and uses Apache MyFaces 2.0 implementation.

JPA

2.0

Apache OpenJPA 2.0 implementation of the Java Persistence API (JPA).

JTA

-

Java Transaction API (JTA) is one of the Java Enterprise Edition (Java EE) APIs.

SIP

1.1

Voice and video calls over Internet Protocol (IP).

JMS

-

Java Message Service (JMS) is one of the Java Enterprise Edition (Java EE) APIs.

JMX

-

The Java Management Extensions (JMX) API is one of the Java Enterprise Edition (Java EE) APIs.

JDBC

-

Java Database Connection (JDBC) is one of the Java Enterprise Edition (Java EE) APIs.

RMI

-

Remote Method Invocation (RMI) is one of the Java Enterprise Edition (Java EE) APIs.

JavaMail

1.4

JavaMail APIs provide a framework for building mail client applications.

JAF

1.4

JavaMail API requires the JavaBeans Application Framework (JAF).

SSL

3.0

Secure Sockets Layer.

SOAP

1.2

SOAP is a specification for the exchange of XML-based information in distributed environments.

XPath

2.0

XPath is a language for addressing parts of an XML document.

XSLT

2.0

XSLT stands for XSL Transformations. XSL is a style sheet language for XML.

XQuery

1.0

Intelligent XML search API.

JAX-WS

2.2 (partial)

Java programming language API for creating web services.

JAX-B

2.2

Java Architecture for XML Binding (JAXB) is a Java technology that provides an easy and convenient way to map Java classes and XML schema for simplified development of web services.

CDI

JSR 299

Support for Contexts and Dependency Injection (CDI) .

JAX-RS

-

API for RESTful Web Services (JAX-RS) is one of the Java Enterprise Edition (Java EE) APIs .

 

Architecture and internals


We have mentioned that WebSphere Application Server 8 has been developed to adhere to the new JEE 6 specification. We will now quickly look at what JEE 6 is made up of, so we can see how WAS maps out.

JEE 6 Server architecture model

It is important for a WAS 8 administrator to have a good awareness of the JEE 6 server architecture model. Let's look at Java EE 6 and quickly run though the internal JEE containers. This should give you an insight and understanding into what WebSphere 8 has to offer in the way of JEE 6 support for these containers. We cannot delve into every API/Standard of JEE 6 as we are here to learn WebSphere Application Server, but I think the overview of the containers will help provide context for the specific features of the JEE specification.

Java EE containers

The JEE specification outlines four types of container, as shown in the following diagram. These containers form the guidelines of the services, which are to be provided by a JEE application server as implemented by a software vendor like IBM:

Note

A JEE application will use one or more of the previous four components, that is an application can simply be a web application running in the Web Container alone, or a JEE application can be more complex and contain both Web components and EJB components, and so more than one container can be used in serving an application.

Applet container

The Applet container manages Java applets. An Applet is a Java program that can be embedded into a web page. Most web pages are rendered using HTML/XML-based technology. By embedding the tags <APPLET> and </APPLET> a browser will load a Java applet, which can use the Java AWT/Swing interface APIs, allowing a traditional client-like application to run within the browser. The Applet container manages the execution of the applet, and contains the web browser.

Web container

The Web container, also known as a Servlet container, provides web-related services. In a nutshell, this is the component of a web-server which serves web content, web-services, facilitates web-security, application deployment, and other key services. The following diagram shows the availability of the Java EE 6 APIs in the web container:

EJB container

The EJB (Enterprise JavaBean) container manages the services of the EJB API and provides an environment for running the enterprise components of a JEE application. Enterprise JavaBeans are used in distributed applications, and facilitate transaction services and appropriate low-level implementations of transaction management and coordination, as required by key business processes. They are essentially the business components of an application.

The EJB container also manages database connections and pooling, threads, and sockets on behalf of enterprise beans, as well as state and session management. The following diagram shows the availability of the Java EE 6 APIs in the EJB container:

Application client container

An application client runs on a user's client machine and provides a traditional rich Graphical User Interface (GUI) created from the Swing or the Abstract Window Toolkit (AWT) API. Application client's access enterprise beans running in the business tier—which we explained earlier—run in the EJB container. An application client can use RMI (Remote Method Invocation) or other protocols, such as SOAP (Simple Object Access Protocol) , over HTTP (Hypertext Transfer Protocol). The following diagram shows the Java EE 6 APIs within the application client container:

If you would like to know more about the Java 6 API, this link has a great walkthrough of the Java EE 6 Tutorial: http://download.oracle.com/javaee/6/tutorial/doc/index.html.

Now that we have seen the various APIs contained within the four component containers for the JEE 6 platform, we can now look at the internal architecture of WebSphere with some context established.

 

Inside WebSphere Application Server


Before we look at installing WAS and deploying an application, we will quickly run over the internals of WAS. The anatomy of WebSphere Application Server is quite detailed so, for now, let's briefly outline some of the more important parts, discovering more about the working constituent parts as we work through each of the remaining chapters.

The following diagram shows the basic architecture model for a WebSphere Application server JVM:

JVM

All WebSphere Application Servers are essentially Java Virtual Machines (JVMs). IBM has implemented the JEE application server model in a way that maximizes the JEE specification, and also provides many enhancements creating specific features for WAS. JEE applications are deployed to an Application Server.

Web container

A common type of business application is a web application. The WAS web container is essentially a Java-based web server contained within an application server's JVM, which serves the web component of an application to the client browser.

EJB container

Applications need not only comprise of web components. In a more complex enterprise-based application, business objects are created to provide a layer of abstraction between a web application and the underlying data. The EJB container provides the services required to manage the business components as implanted with EJBs.

Virtual hosts

A virtual host is a configuration element that is required for the web container to receive HTTP requests. As in most web server technologies, a single machine may be required to host multiple applications and appear to the outside world as multiple machines. Resources that are associated with a particular virtual host are designed not to share data with resources belonging to another virtual host, even if the virtual hosts share the same physical machine. Each virtual host is given a logical name and assigned one or more DNS aliases by which it is known. A DNS alias is the TCP/host name and port number that is used to request a web resource, for example, <hostname>:9080/<servlet>.

By default, two virtual host aliases are created during installation. One for the administration console called admin_host and another called default_host, which is assigned as the default virtual host alias for all application deployments, unless overridden during the deployment phase. All web applications must be mapped to a virtual host, otherwise web browser clients cannot access the application that is being served by the web container.

Environment settings

WebSphere uses Java environment variables to control settings and properties related to the server environment. WAS variables are used to configure product path names, such as the location of a database driver, for example, ORACLE_JDBC_DRIVER_PATH, and environmental values required by internal WAS services and/or applications.

Resources

Configuration data is stored in XML files in the underlying configuration repository of the WebSphere Application Server. Resource definitions are a fundamental part of J2EE administration. Application logic can vary depending on individual business requirements, and there are several resource types that can be used by an application. The following table shows a list of some of the most commonly used resource types:

Resource types

Description

JDBC (Java database connectivity)

Used to define providers and data sources.

URL providers

Used to define end-points for external services, for example, web services.

JMS providers

Used to define messaging configurations for Java Message Service, Message Queuing (MQ) connection factories and queue destinations, and so on.

Mail providers

Enable applications to send and receive mail, typically using the SMTP (Simple Mail Transfer Protocol).

JNDI

The Java Naming and Directory Interface (JNDI) is employed to make applications more portable. JNDI is essentially an API for a directory service, which allows Java applications to look up data and objects via a name. Naming operations, such as lookups and binds, are performed on contexts. All naming operations begin with obtaining an initial context. You can view the initial context as a starting point in the namespace. Applications use JNDI lookups to find a resource using a known naming convention. You can override the resource the application is actually connecting to without requiring a reconfiguration or code change in the application. This level of abstraction using JNDI is fundamental and required for the proper use of WAS by applications.

Application file types

There are four main file types we work with in Java applications. An explanation of these file types is shown in the following table:

File Type

Description

JAR file

A JAR file (or Java ARchive) is used for organizing many files into one and employ the .jar file extension.

The actual internal physical layout is much like a ZIP file. A JAR is generally used to distribute Java classes and associated metadata. In JEE applications, the JAR file often contains utility code, shared libraries, and EJBs. An EJB is a server-side model that encapsulates the business logic of an application and is one of the several Java APIs in the Java Platform, Enterprise Edition with its own specification. You can visit http://java.sun.com/products/ejb/ for information on EJBs.

RAR file

A RAR (Resource Adapter Archive) is a special Java archive (JAR) file that is used to package a resource adapter for the Java 2 Connector (J2C) architecture and has the .rar file extension.

Stored in a RAR file, a resource adapter may be deployed on any JEE server, much like the EAR file of a JEE application. A RAR file may be contained in an EAR file or it may exist as a separate file. WebSphere supports both.

A resource adapter is analogous to a JDBC driver. Both provide a standard API through which an application can access a resource that is outside the JEE server. For a resource adapter, the outside resource is an EIS (Enterprise Information system ) and allows a standard way for EIS vendor's software to be integrated with JEE applications; for a JDBC driver, it is a DBMS (Database Management System). Resource adapters and JDBC drivers are rarely created by application developers. In most cases, both types of software are built by vendors who sell products such as tools, servers, or integration software.

WAR file

A WAR file (Web Application) is essentially a JAR file used to encapsulate a collection of JavaServer Pages (JSP), Servlets, Java classes, HTML, and other related files, which may include XML and other file types depending on the web technology used. For information on JSP and Servlets, you can visit http://java.sun.com/products/jsp/.

Servlet can support dynamic web page content; they provide dynamic server-side processing and can connect to databases.

JavaServer Pages (JSP) files can be used to separate HTML code from the business logic in web pages. Essentially, they too can generate dynamic pages; however, they employ Java beans (classes), which contain specific detailed server-side logic.

A WAR file also has its own deployment descriptor called web.xml, which is used to configure the WAR file and can contain instructions for resource mapping and security.

EAR file

An Enterprise Archive file represents a JEE application that can be deployed in a WebSphere Application Server. EAR files are standard Java archive files (JAR) and have the file extension .ear. An EAR file can consist of the following:

One or more web modules packaged in WAR files.

One or more EJB modules packaged in JAR files.

One or more application client modules.

Additional JAR files required by the application.

Any combination of the above.

The modules that make up the EAR file are, themselves, packaged in archive files specific to their types. For example, a web module contains web archive files and an EJB module contains Java archive files. EAR files also contain a deployment descriptor (an XML file called application.xml) that describes the contents of the application and contains instructions for the entire application, such as security settings to be used in the runtime environment.

Note

When an EJB module or web module (WAR) is installed as a standalone application, it is automatically wrapped in an Enterprise Archive (EAR) file by the WebSphere deployment process, and is managed on disk by WebSphere as an EAR file structure. So, if a WAR file is deployed, WebSphere will convert it into an EAR file.

 

WebSphere Application Server terminology


Throughout this book we will be referring to WAS-specific terminology. There are some key points and terms we need to clarify to aid in understanding WAS as we discuss the finer points of WAS administration. The following section outlines important keywords and terminology, referred to in later chapters.

Runtime binaries

The core product files are the actual product binary files, and can be shared by many profiles. The directory structure for the product has two major divisions of files in the installation root directory for the product. One division is the runtime binaries and the other is for profiles. We will discuss this in detail in Chapter 2, Installing WebSphere Application Server.

Profiles

A profile is an 'instance' of a WebSphere Application Server configuration. A profile contains its own set of administration scripts, its own environment, its own repository, and its own node agent. Many profiles can be created from a single install. Profiles can be installed to share runtime binaries allowing multiple profiles to benefit from a single maintenance update. It is also possible to allow each profile to have its own copy of the runtime binaries allowing profiles to update independently.

An example of using multiple profiles might be that a developer needs to create separate profiles of the product in order to segregate development and testing, each profile being based on a different fix-pack level, and/or containing specific configuration settings. In the following chapters, we will explain profiles in more detail.

Cells

A unit of management is a Cell. The entire administrative configuration data is stored in XML files containing the master configuration of the Cell. It is also a grouping of nodes into a single administrative domain. For WebSphere Application Server, it means you group (federate) several servers within a Cell, then you can administer them with a single administrative console. Federating multiple application servers into a single administrative console is covered in Chapter 9, Administrative Features.

The following diagram outlines the components of a Cell:

Nodes

A node is the term which can be given to the physical OS instance on which the WebSphere process will run. Another important term related to nodes is the Node Agent. Node Agents are responsible for spawning or killing server processes and also configuration synchronization between the Deployment Manager and the Node in the WebSphere Network Deployment product.

When using WebSphere Application Server, there is no node agent process available for a standalone application server node, unless you decide to federate the application server node with a Deployment Manager for a given Cell of an existing WebSphere Network Deployment installation. In short, a standalone installation of a WebSphere is in fact a single Cell, Node, Node Agent, and Server all in one.

It can be quite confusing at times, because WAS is designed for scalability and extension, so depending on the version of WAS purchased, you can extend its architecture and infrastructure footprint. Some of these terms come into their own once you upgrade to WebSphere Network Deployment and other extended variants of WAS.

Since version 7, the administrative agent has become available. This provides a single interface to administer multiple standalone application servers. Multiple servers may exist for development, test, staging, pre-production, and so forth, thus having a single administration console to manage many servers provides administrators with new capability.

Servers

Each standalone Application Server node needs to run a JVM in which a deployed JEE application will run. With WAS base, each profile will have a single JVM. In WAS ND, we can have multiple JVMs per node, which is part of the highly-available design architecture of WAS ND. You could say an installation of a standalone WebSphere application server is a cell, a node, and a server with a single JVM all in one along with an administration console.

 

WebSphere Application Server products


WebSphere Application Server also forms the base of WebSphere Application Server 8 Network Deployment (WAS-ND) Edition, which is designed for the more complex enterprise, with support for high availability such as clustering, failover, load balancing and work load management, and so on.

Other products in the WebSphere range include WebSphere Portal, WebSphere ESB, WebSphere Process Server, and many others. The following table provides a quick review of WebSphere Application Server products:

Product editions

Product Edition

Description

Application Server

Build, deploy, and manage SOA business applications and services of all types. Application Server also known as Application Server Base is the foundation of the WebSphere Application Server suite.

Application Server – Express

An affordable solution at a reduced cost.

Application Server Community Edition

Lightweight Java EE application server based on open source Apache Geronimo.

Application Server Network Deployment

Provides high-availability with near-continuous availability along with advanced performance and management capabilities, for mission-critical applications.

ND provides JVM clustering, data replication services, and advanced workload management.

Application Server for Developers

WebSphere Application Server for Developers provides simplified access to enable developers to build and test in the same environment that will ultimately support their applications.

Application Server for z/OS

Takes advantage of the qualities of service of IBM z/OS, by harnessing the full capabilities of the z/OS.

Related Product editions

Product Edition

Description

Application Server Hypervisor Edition

Optimized to instantly run in VMware and other server virtualization environments.

WebSphere Virtual Enterprise

Consolidate application servers and maximize utilization while monitoring application health.

WebSphere eXtreme Scale

Provides distributed object caching for elastic scalability and cloud environments.

WebSphere Extended Deployment Compute Grid

Enable practical reuse of on-line Java™ assets in the batch workloads.

 

Supported OS


WebSphere is supported on the following OS (Operating System) platforms:

  • Windows

  • AIX

  • Linux

  • Solaris

  • i/OS

  • z/OS

Beginning with Version 6.1 and now with Version 8, IBM is supporting open standard specifications and have aligned WAS with a view to a more common approach across all the platforms, to the extent that WAS now works with a large number of Web servers including Apache HTTP Server, Netscape Enterprise Server, Microsoft Internet Information Services (IIS), IBM HTTP Server for i5/OS, IBM HTTP Server for z/OS, and IBM HTTP Server for AIX/Linux/Microsoft Windows/Solaris.

Following is a table of Platforms and recommended versions of OS:

OS

Supported Version

Linux 32

  • Red Hat Enterprise Linux (RHEL) 5.0 Advanced Platform (32- and 64-bit kernels)

  • Red Hat Enterprise Linux 5.0 Desktop editions (32- and 64-bit kernels)

  • SUSE Linux Enterprise Desktop (SLED) 10.0 (32- and 64-bit kernels)

  • SUSE Linux Enterprise Desktop 11.0 (32- and 64-bit kernels)

  • SUSE Linux Enterprise Server (SLES) 10.0 (32- and 64-bit kernels)

  • SUSE Linux Enterprise Server 11.0 (32- and 64-bit kernels)

Linux 64

  • Red Hat Enterprise Linux 5.0 Advanced Platform (64-bit kernels only)

  • Red Hat Enterprise Linux 5.0 Desktop editions Platform (64-bit kernels only)

  • SUSE Linux Enterprise Desktop 10.0 (64-bit kernels only)

  • SUSE Linux Enterprise Desktop 11.0 (64-bit kernels only)

  • SUSE Linux Enterprise Server 10.0 (64-bit kernels only)

  • SUSE Linux Enterprise Server 11.0 (64-bit kernels only)

HP-UX

  • HP-UX 11iv2 with Patch Bundle dated December 2007 (64-bit kernel support)

  • HP-UX 11iv3 with Patch Bundle dated September 2009 (64-bit kernel support)

Solaris 32

  • Oracle Solaris Version 10 with a patch cluster dated October 2009 or later (32- and 64-bit kernel support)

Solaris 64

  • Oracle Solaris Version 10 with a patch cluster dated October 2009 or later (64-bit kernel support)

Windows 32

  • Microsoft XP Professional with SP2

  • Microsoft Windows Server 2003, Datacenter with SP2 (32- and 64-bit editions)

  • Microsoft Windows Server 2003, Enterprise with SP2 (32 and 64-bit editions)

  • Microsoft Windows Server 2003, Standard with SP2 (32- and 64-bit editions)

  • Microsoft Windows Server 2003 R2 (32- and 64-bit editions)

  • Microsoft Vista Business

  • Microsoft Vista Enterprise

  • Microsoft Vista Ultimate

  • Microsoft Vista Ultimate SP1

  • Microsoft Windows 7 Enterprise (32- and 64-bit editions)

  • Microsoft Windows 7 Professional (32- and 64-bit editions)

  • Microsoft Windows 7 Ultimate (32- and 64-bit editions)

  • Microsoft Windows Server 2008, Datacenter with SP1 (32- and 64-bit editions)

  • Microsoft Windows Server 2008, Enterprise with SP1 (32 and 64-bit editions)

  • Microsoft Windows Server 2008, Standard with SP1 (32- and 64-bit editions)

  • Microsoft Windows Server 2008 R2, Standard (64-bit edition only)

  • Microsoft Windows Server 2008 R2, Enterprise (64-bit edition only)

  • Microsoft Windows Server 2008 R2, Datacenter (64-bit edition only)

Windows 64

  • Microsoft Windows Server 2003 Enterprise with SP2 (64-bit edition only)

  • Microsoft Windows Server 2003 Datacenter with SP2 (64-bit edition only)

  • Microsoft Windows Server 2003 Standard with SP2 (64-bit edition only)

  • Microsoft Windows Server 2003 R2 (64-bit editions only)

  • Microsoft Windows Server 2008 Enterprise with SP1 (64-bit edition only)

  • Microsoft Windows Server 2008 Datacenter with SP1 (64-bit edition only)

  • Microsoft Windows Server 2008 Standard with SP1 (64-bit edition only)

  • Microsoft Windows Server 2008 R2, Standard (64-bit edition only)

  • Microsoft Windows Server 2008 R2, Enterprise (64-bit edition only)

  • Microsoft Windows Server 2008 R2, Datacenter (64-bit edition only)

AIX 32

  • AIX 6.1 with Recommended Maintenance package 6100-00-04

AIX 64

  • AIX 6.1 with Recommended Maintenance package 6100-00-04

z/OS 32

  • z/OS: V1.10, 1.11, or 1.12

z/OS 64

  • z/OS: V1.10, 1.11, or 1.12

 

Summary


In this chapter, we have been introduced to WebSphere Application Server v8 capabilities and features to be compliant with JEE version 6. We had a look at the four main components of the JEE 6 platform to provide some context for understanding the WAS 8 internals.

We have explained key terms relating to WAS and explained WebSphere Application Server profiles. We learned that WebSphere Application Server base is the base product on which a suite of extended business products are offered by IBM, which include Application Server, and we briefly covered these products.

Understanding WAS is critical to understanding all the other products in the WebSphere brand. Becoming familiar with WAS is important to anyone who works in the Java enterprise community whether he/she is a programmer, administrator, or an architect. In the remaining chapters of this book, we will cover installing, configuring, administering, and maintaining WAS, and in the next chapter we will learn two different methods of installing WAS. One method will cover a GUI (Graphical User Interface) based install using the IBM Installation Manager. The other method is a demonstration of how to use command-line tools, which are designed for scripting automated installations.

About the Author
  • Steve Robinson

    Steve Robinson is an independent WebSphere specialist and consultant. He has been consulting in IT since 1997 and has been involved in client projects around the globe; many of which are for fortune 500 companies. Steve started out originally as a consultant in the IBM Lotus Notes/Domino product suite, where he excelled in middleware integration technologies to ensure homogenous environments could exist in the new heterogeneous world. Having worked for many different industries, Steve has had a plethora of experience in the integration of most technologies across many different systems and cultures. He is also an accomplished programmer in including C, Java, and the Microsoft .NET development tools. Steve has gleaned many insights due to the amount of large enterprise projects he has been involved with and his passion for documentation and process improvement is recognized by all those he works with. Steve is married and lives with his family in England. He spends his time either writing, or researching new products and technologies for client projects along with investigating new ways to automate process where possible. Steve is also known for his contribution to the WebSphere Internet community through one of his many top-ranking WebSphere knowledge portals: http://www.webspheretools.com.

    Browse publications by this author
Latest Reviews (3 reviews total)
Good book. Straight to the point
Excellent book, with very good information written in concise fashion: very easy to read. Regarding the purchasing process: Fast delivery. support team replied in timely manner and provided good information. I didn't like the fact that they don't provide tracking information of packages.
IBM WebSphere Application Server 8.0 Administration Guide
Unlock this book and the full library FREE for 7 days
Start now