Book Image

IBM Lotus Notes and Domino 8.5.3: Upgrader's Guide

By : Tim Speed, Barry Max Rosen, Scott O'Keefe
Book Image

IBM Lotus Notes and Domino 8.5.3: Upgrader's Guide

By: Tim Speed, Barry Max Rosen, Scott O'Keefe

Overview of this book

<p>IBM Lotus Domino software is a world class platform for critical business, collaboration, and messaging applications. With Lotus Notes and Domino 8.5.3, IBM has once again provided business users with an intuitive, fully integrated platform to enhance each user's experience with business communications, while reducing Total Cost of Ownership (TCO) and increasing Return on Investment (ROI). You can create and share information effectively to make quick business decisions and streamline the way individuals and teams work. It is no longer just an email tool, but a means of extending business communications to a new level. In order to utilize all the powerful features of the new release, you need to upgrade your existing system to Lotus Notes and Domino 8.5.3. <br /><br />Written by senior architects and specialists of IBM Software Services for Lotus, this book will enable you to quickly upgrade your existing system and leverage the full capabilities of Lotus Notes and Domino 8.5.3. The authors explore the enhanced productivity tools available within this release and go through the new features of the Lotus Notes and Domino 8.5.3 suite and document the technical features in a descriptive way, with examples and useful screenshots.<br /><br />The book begins with an overview of the SOA characteristics of Lotus Notes and how it can help you assemble applications that can play a role in SOA. The book then moves on to the features and changes in Lotus Notes Client 8.5.3, before providing an overview of productivity tools: IBM Lotus Documents, IBM Lotus Presentations, and IBM Lotus Spreadsheets. The book then dives into topics such as Lotus and Domino 8.5.3 server features, deployment enhancements in Lotus Notes and Domino 8.5.3, Domino 8.5.3 enhancements and upgrading to Lotus Notes and Domino 8.5.3, amongst other topics. This book is your complete guide to the most powerful new features and changes in the Lotus Notes and Domino 8.5.3 release.</p>
Table of Contents (18 chapters)
IBM Lotus Notes and Domino 8.5.3: Upgrader's Guide
Credits
Foreword
About the Authors
About the Reviewers
www.PacktPub.com
Preface

How Lotus Notes 8.5.3 works with SOAs


Now that we've covered the basics of SOAs, it is time to examine how Lotus Notes 8.5.3 fits in. Lotus Notes can help an organization achieve target architecture requirements with SOA characteristics by:

  • Supporting service re-use. Lotus Notes 8.5.3 does this by providing a composite application development capability, and by providing web service consumer and producer capability.

  • Enabling further extension of Lotus Notes to work with SOAs through an open technologies framework.

Composite applications

Lotus Notes 8.5.3 has the ability to assemble composite applications. This ability is useful in the Assemble phase of the SOA lifecycle.

A composite application is a loosely coupled collection of user-facing components brought together for a specific business purpose. Composite applications provide the frontend of an SOA. The ability to create and edit composite applications lets you easily combine and re-use different services, providing a tremendous platform for service re-use—a key characteristic of an SOA. With Lotus Notes 8.5.3, server-managed, NSF-based composite applications can be created or edited. An NSF-based composite application can consist of NSF, Eclipse, and WebSphere Portal components.

Elimination of information and service "silos" is a key benefit of composite applications for end users. With composite applications, the services are loosely coupled and independent (not hardwired into the infrastructure), so they can be easily re-used or extended, as business needs change. This is an important element in enabling a business to respond flexibly to business changes and to alter application interactions as needs dictate. Available online or offline, composite applications can facilitate self-service activities. Using the Composite Application Editor within the Lotus Notes 8.5.3 software, end users and LOB managers can create composite applications. IT staff can use their current development skills to build and modify reusable components, helping to reduce IT and development costs. Organizations can re-use previously developed Eclipse technology-based components within the composite applications experienced by Lotus Notes and Domino 8 software, helping to increase return on investment in application development tools and skills.

The Composite Application Editor is an install-time option of the Lotus Notes 8.5.3 client. Composite applications can be built with minimal or no NSF design changes to re-use existing Lotus Notes applications as components of the composite application.

Development responsibilities for building composite applications can be distributed across several types of application development and administration team members. The process does not have to be restricted to a highly skilled component developer. The roles in composite application development typically include the following:

  • A component developer who designs and creates NSF and Eclipse components

  • An application assembler who defines and assembles the composite application, and who may be a business user

  • An application administrator who deploys portlets onto the WebSphere portal and maintains NSF-based composite applications on the Domino server

The following section provides an example of how Lotus Notes 8.5.3 enables composite application assembly. The documentation and files necessary to build this example can be found by visiting http://www-03.ibm.com/developerworks/blogs/page/CompApps?entry=more_sophisticated_tutorial_of_composite.

The first component of this example is Lotus Notes contacts.

The following screenshot shows the Contacts view of Lotus Notes. On its own, this component shows a list of contacts and has a preview pane showing the details for the currently selected contact. Certainly, this is a valuable service by itself. But our example shows how you can re-use this service, combine it with other services, and extend the value of this component:

The second component of this example is a Lotus Notes discussion application that is shown in the following screenshot. This component allows users to discuss topics (in this case, Lotus Notes Designer) in a user discussion forum setting. Again, this on its own is a useful component, but our example will combine this component with Lotus Notes contacts to create a new, more useful service by loosely coupling these components:

In the first step in this example, the Lotus Notes 8.5.3 Designer uses Web Services Description Language (WSDL) to expose properties and actions needed to navigate within the Lotus Notes forum application. The following screenshot is from the Lotus Notes 8.5.3 Designer where the final step of the WSDL creation is being completed:

In addition to using WSDL, the Lotus Notes 8.5.3 Designer also allows you to create actions to be implemented during the assembly of a composite application. In this case, the action is called SelectPerson, as shown in the following screenshot:

This action will select the forum entry for the current selection in the Lotus Notes contacts component, as shown in the following screenshot:

With the appropriate WSDL action associated with the Lotus Notes Forum application, the prerequisites for assembling the composite application are in place. In the following screenshot, the Composite Application Editor is used to wire the Lotus Notes Contacts view and the Notes forum application:

The result is a composite application in which the Notes Forum entry is displayed based on the selected Lotus Notes contact. As you can see in the following screenshot, Betty Zechman of ZetaBank is the currently selected Lotus Notes contact and the Lotus Notes Forum has been advanced to show the threads for Betty Zechman.

Next, the Composite Application Editor is used to include an Eclipse tag cloud in the composite application. This component displays tag data about the current contact. This is accomplished by linking the Eclipse component to the Lotus Notes Forum application.

In the following screenshot, the current Lotus Notes contact selection is Betty Zechman and the interest selected is Applications Development. The result is a view of the Notes forum positioned in a thread by Betty Zechman related to Applications Development:

This simple example shows the power of Lotus Notes 8 Composite Application Editor. Minimal Lotus Notes designer effort, combined with use of the Lotus Notes 8 client Composite Application Editor, can produce a new business function re-using existing heterogeneous services.

Lotus Notes (version 8 and 8.5.3) and web services

Web service producer and consumer capability is not new to Lotus Notes 8 and Notes 8.5.3. However, the ability to produce and consume web services is a key characteristic of SOA. This section provides an overview of how Lotus Notes supports web service production and consumption.

A web service provider makes available a WSDL document that defines the service interface. The WSDL document is in XML format. What happens behind the interface is up to the provider, but most providers map the interface to procedure calls in a supported programming language. Incoming requests from a consumer are passed to the underlying code, and results are passed back to the consumer.

Lotus Domino maps the WSDL interface to an agent-like web service design element that can be coded in LotusScript or Java. The web service must be on a Domino server with HTTP enabled. (We can test the web service through an HTTP session in the Notes client preview.) Access is through one of the following Domino URL commands:

  • OpenWebService: This invokes the web service in response to a SOAP-encoded message, sent through an HTTP POST request. An HTTP GET request (for example, a browser query) returns the name of the service and its operations.

  • WSDL: This returns the WSDL document in response to an HTTP GET request.

Several approaches can be used to create a web service design element in Domino Designer. One approach is to code the service entirely in LotusScript or Java. In this case, saving the design element generates a WSDL document that reflects the LotusScript or Java code. Alternatively, an existing WSDL document can be imported. In this case, the LotusScript or Java code reflects the operations in the imported WSDL document. The web service design element saves the WSDL document as well as the code. If the public interface has not changed, the WSDL document stays as it is. If anything in the coding that affects the public interface is changed, a new WSDL document is generated.

In Domino Designer, the web service design element resides below Agents under the Shared Code element, as shown in the following screenshot:

The Web Services design window looks a lot like the Agent design window. Clicking on the New Web Service button creates a new web service. Double-clicking on the name of an existing web service opens it for editing.

An example of a web service to access Domino databases can be found by visiting the following URL:

http://www-10.lotus.com/ldd/pfwiki.nsf/dx/ibm-using-web-services-to-access-a-domino-discussion-database

Lotus Notes 8.5.x and open technologies

Lotus Notes 8.5.x supports both OASIS/ODF and Eclipse open formats.

OASIS/ODF

Lotus Notes 8.5.3 supports both OASIS/ODF and Eclipse open formats. Word processing, spreadsheet, and presentation applications are basic, standard tools that many business users need and use on a daily basis. The Lotus Notes 8 and 8.5.3 product suite includes a suite of office productivity tools that allows end users to create, edit, and collaborate on a wide variety of file types. The Lotus Notes 8.x product suite is packaged with IBM productivity tools that support OASIS. Open Document Format (ODF) is an international standard for saving and sharing editable documents such as word processing documents, spreadsheets, and presentations.

Eclipse

At the core of the Lotus Notes 8.x software (and the higher versions), is IBM's version of Eclipse Rich Client Platform (RCP) technology, which introduces a new, open, standards-based SOA that makes the Lotus Notes 8 software more extensible. In fact, a number of the new features of Lotus Notes 8 are a direct result of this extensibility (for instance, Sametime integration and RSS feed integration).

IBM has built a common client platform named Lotus Expeditor (previously called WebSphere Everyplace Deployment or WED) that packages the Eclipse Rich Client Platform with some extra services such as security, synchronization, data, deployment, and more, which can be used across the IBM software product set. The Lotus Notes 8 client is a consumer of this Lotus Expeditor common platform. This provides additional functionality while ensuring forward compatibility for existing Lotus Notes and Domino applications.

Lotus Notes 8 and 8.5.x software supports nearly all custom Lotus Notes applications built for prior versions and incorporates the open standards of the Eclipse application development framework, allowing the use of a componentized SOA. This provides help in making it easy to aggregate, access, and deploy functionality from a mix of software programs and systems. It enables developers to build applications more quickly and to re-use existing assets as business needs arise.