Tải bản đầy đủ (.pdf) (71 trang)

Lotus Domino Release 5.0 A Developer’s Handbook phần 1 pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (789.67 KB, 71 trang )

Printed in the U.S.A.
SG24-5331-01
Part No. CC7EDNA
Lotus Domino Release 5.0: A Developer’s Handbook
Lotus Domino Release 5.0:
A Developer’s Handbook
Fiona Collins, David Morrison, Søren Peter Nielsen, Sami Serpola, Reinhold Strobl
SG24-5331-01
International Technical Support Organization

Lotus Domino Release 5.0: A Developer’s Handbook
Lotus Domino Release 5.0:
A Developer’s Handbook


xii Lotus Domino Release 5.0: A Developer’s Handbook
SG24-5331-01
International Technical Support Organization
Lotus Domino Release 5.0:
A Developer’s Handbook
September 1999
Take Note!
Before using this information and the product it supports, be sure to read the general information in
the Special Notices section at the back of this book.
Second Edition (September 1999)
This edition applies to Lotus Domino Release 5.0.1.
Comments may be addressed to: IBM Corporation, International Technical Support Organization
Dept. JN9B Building 045 Internal Zip 2834
11400 Burnet Road
Austin, Texas 78758-3493
When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the


information in any way it believes appropriate without incurring any obligation to you.
© International Business Machines Corporation 1999. All rights reserved.
Note to U.S. Government Users: Documentation related to restricted rights. Use, duplication or disclosure
is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp
.
16
Fields

16
Views

15
Subforms

15
Forms

15
The Domino Database

15
Domino Design Elements

14
The Script Area

14
The Reference View

13

The Objects View

13
The Programmer’s Pane

12
The Launch Buttons

12
The Window Tabs

11
The Design Pane

10
Managing Your Workspace

9
2 Lotus Domino Designer:
An Overview

8
Summary

6
Domino Administrator R5.0

4
Notes R5.0


4
Clients for Domino R5.0

2
Services Offered by Domino Servers

2
Domino Enterprise Server

1
Domino Application Server

1
Domino Mail Server

1
Domino R5.0 Server

1
1 What is Lotus Domino?

xv
Comments Welcome

xiii
The Team That Wrote This Redbook

xiii
Preface


60
Sharing and Reusing a Field

57
Performing a Test Run

56
Creating a Field

53
Objects View

52
Giving the Form a Title

43
Specifying Form Properties

43
Forms

43
4 Forms

42
Summary

40
Using Design Synopsis


33
Changing the Database Properties

27
Creating a Database

27
Domino Databases

27
3 Domino Design Elements:
Basics

25
Easy Access to Enterprise Data and
Applications

24
Multilingual Applications Support

24
Multi-Client Applications Support

23
Industry Standards Support

23
New Rapid Development Capabilities
in IDE


22
Domino User Interface Applets

22
Page Designer

21
Frameset Designer

20
Outline Designer

17
New Features of Domino Designer

16
Action Buttons

16
Tables

16
Shared Fields

Contents iii
Contents
102
Importing Pictures

102

Copying Images

102
Images Within Forms

99
Buttons, Action Bar Buttons,
and Hotspots

97
Computed Text

97
Horizontal Rules

97
Other Features of Forms

96
Embedded File Upload Control

94
Embedded Folder Pane

94
Embedded Group Scheduling
Control

93
Embedded View


93
Embedded Outline Control

93
Embedded Date Picker

93
Embedded Navigators

92
Embedded Elements

86
Table Properties

84
Merge and Split Cells

84
Create Tables Within Tables

82
Using Tables

82
Creating a Collapsible Section

82
Working With Collapsible Sections


80
Creating a Layout Region

80
Working With Layout Regions

79
Displaying a Different Form to Web
Users and Notes Users

78
Computed Subforms

77
Removing Subforms

77
Subform Properties

75
Sharing Design Elements With Subforms

74
Field Events

70
Using the $$Return Field

68

Rich Text Field (RTF) Applet

63
Field Properties

138
Presenting Views to Users

137
Creating an All by Category View

136
Using Categories in Views

136
Identifying Unread Documents

133
Overview of Styles

132
Naming Views

132
Hints and Tips on Designing Views

128
Using HTML Formatting for Views

127

Using Java Applets for Display

125
Using the Default Display

125
Views and the Web

123
Working With Views as a Developer

121
Creating a Button on the Action Bar

121
Personal Views

120
Shared, Personal-on-First-Use Views

120
Shared Views

120
Shared and Private Views

118
Summary

117

Creating Calendar Views

114
Editing View Columns

111
Working With View Properties

107
Creating Views

107
What is a Navigator?

107
What is a Folder?

107
What is a View?

107
5 Views
,
Folders
,
and Navi
g
ators
.
106

Summary

106
Using a LotusScript Agent to Capture CGI
Variables

105
Using a Field to Capture CGI Variables

103
Table of CGI Variables Supported by
Domino

103
Using CGI Variables

103
Alternate Text

103
Using Image Resource

iv Lotus Domino Release 5.0: A Developer’s Handbook
173
Resources

170
Embedded Outline

169

Creating a New Outline

167
Outlines

166
Changing the Layout of a Frameset

163
Creating a Frameset

163
Framesets

162
Launching Pages

161
Using Pages

159
Specifying Page Properties

158
Creating a New Page

157
Pages

157

6 New R5.0 Desi
g
n Elements

156
Summary

155
Including a Navigator in the View Menu

154
Testing a Navigator

154
Adding an Action Using @Functions or
LotusScript

154
Adding an Action to a Navigator Object

152
Creating a Navigator

151
Navigator Actions

151
Navigator Objects

150

Using Navigators

150
Creating a Write Access List

149
Creating a Read Access List

149
Managing Access to Views and Folders

148
Designing a Folder

145
Exporting and Importing Views

143
Sorting Documents in Views

142
Indenting Response Documents

142
Formatting Numbers in Columns

141
Formatting Date and Time Columns

140

Hiding Views

138
Embedding Views

194
Using a LotusScript Agent to Capture CGI
Variables

194
Using the @URLOpen Command to Call
Agents

193
WebQueryOpen and WebQuerySave
Agents

193
Running Multiple Instances of an Agent

192
Agents and the Web

189
Troubleshooting Agents

189
To Disable All Automated Agents in a
Database


189
To Disable Individual Agents

189
Disabling Scheduled Agents

188
Debugging Agents

188
Checking the Agent Log

187
Testing an Agent Before Copying it to a
Live Database

187
Testing an Agent During Development

187
Testing an Agent

186
Displaying the Agent Pop-up Menu

183
Specifying What the Agent Should Do

182
Selecting Documents to be Processed


180
Scheduling the Agent

179
Naming the Agent

179
Creating an Agent

178
Restricted and Unrestricted Agents

177
Access Control

177
About Agents

177
7 A
g
ents

176
Summary

176
Other


176
Script Libraries

175
Shared Fields

175
Applets

173
Images

Contents v
230
When to Use Internet Security

230
Domino and SSL

228
Secure Sockets Layer (SSL)

227
HTTP Basic Authentication

227
Authentication on the Web

225
Using Encryption for Field Security


225
Use of Hide-When Formulas

224
Controlled Access Sections

223
Combining Readers and Authors Fields

222
Editor Access

220
Read Access

219
Controlling Access to Documents

219
Preventing Printing, Forwarding, and
Copying of Documents

216
Controlling Access to Forms

215
Controlling Access to Views

215

Controlling Access to Views and Forms

214
Using Directory Link Files to Control Access
to an Application

214
Using Outline Control to Hide Parts of an
Application

212
Changing the ACL Programmatically

212
Maximum Internet Name and Password
Access

211
Enforce Consistent ACL

210
Roles in the ACL

206
Setting Up and Refining the ACL

204
Using the Access Control List to Control
Access to an Application


202
Overview of Domino Security
Architecture

201
Controlling Access to Domino Data

201
8 Securin
g
Your A
pp
lication

199
Summary

197
Using Agents — Advanced Topics

195
Creating a Web Page Counter

261
How Users Search Using a Search Site
Database

260
Multi-Database Full Text Indexes


258
Creating a Search Site Database

258
Search Site Databases

256
Customizing Search Result Forms

252
Creating a TeamRoom Search

251
Customizing Search and Result Forms

249
Full Text Indexing

249
Search Site URLs

248
Search View URLs

248
Search-Related URLs

247
Adding Search Capabilities to Your Web Site
.

247
9 Searchin
g

245
Summary

244
Distinguishing True Security Features

242
Key Design Issues

240
Developing a Plan for Securing Your
Application

240
Backup and Restore

239
APIs for Customized Authentication,
Encryption, and Signing

237
Access Control for HTML and Other Files
.
234
Using Signatures for Security


234
Other Security Options and Considerations

234
Hiding the Design of a Database

234
Controlling if Users Paste Documents into
Database

234
Password Field

233
Using @UserNameList

233
Using @ClientType

232
Using @UserName

232
Using @UserRoles

232
Programming Considerations

231
Defining Web Users


vi Lotus Domino Release 5.0: A Developer’s Handbook
301
Making Field Value Changes Effective

300
Using the Evaluate Function to Combine
LotusScript and Formulas

298
When to Use Formulas and LotusScript

297
Improving Form Performance

297
Catching Errors at Compile Time

295
Using a Template Database

293
Using Script Libraries

292
Reserved Fields

291
Use Consistent Variable Names


290
General Suggestions

290
LotusScript Programming Tips and
Considerations

285
How Scripts and Formulas Are Executed

285
Using LotusScript in Web Applications

284
Action Object

280
Event Type and Sequence

278
The Event Model

278
Programming With LotusScript

278
Using Domino Objects From Java

276
Understanding Front-end and Back-end

Classes

274
Using Domino Objects from LotusScript

273
Object Hierarchy

270
Domino Back-End Objects

270
Domino Front-End UI Objects

269
The Domino Object Model

267
LotusScript

264
Formula Language

263
Simple Actions

263
Programming in Notes

263

10 Pro
g
rammin
g
for Domino

262
Summary

261
Customizing Search Site Result Forms

349
Runtime Requirements

348
Compiling and Running a Java Program

347
How and When to Use CORBA

347
Benefits of Using CORBA

346
Adding CORBA to the Picture

345
Agents, Applets, Applications, and
Servlets


343
J
ava

343
11 Advanced Domino
Pro
g
rammin
g

342
Summary

341
The API for Domino and Notes

341
External Tools

338
Accessing Java/CORBA Applets via
LiveConnect

337
Accessing an Applet From JavaScript

337
LiveConnect — JavaScript Access to the

Domino Classes

334
Cookies and Domino

328
Examples of Adding JavaScript to Forms

323
Mapping Domino Objects to the
Document Object Model

323
Where JavaScript Gives You Access in
Domino

321
Using JavaScript in Domino Design
Elements

320
Using JavaScript

318
Tracing Programs Without a Debugger

314
How to Enable the Debugger

313

Using the Debugger

312
Error Handling

306
New Domino Objects in Domino R5.0

302
Working With a Rich Text Item and Rich
Text Style

302
Using Validation Formulas and
QuerySave

Contents vii
396
Using the LSX Wizard

396
The LSX Development Process

395
Creating an LSX

393
What the LSX Toolkit Contains

392

Overview

392
Using the LSX Toolkit

392
Using an LSX

391
What Is an LSX?

391
The LSX Toolkit

390
Considerations Before Using OLE
Embedding/Automation

387
Troubleshooting

385
Using OLE Automation Without
Embedding

380
Embedding OLE Objects

378
LotusScript Functions and Methods to Use

for OLE Applications

377
Classes of OLE Objects

376
Accessing Other Applications From Notes
Using OLE Automation

374
Runtime Errors and Debugging

372
More Examples

369
Sending Information From Excel Using
Domino

367
Accessing the Domino Object Model Using
OLE Automation

367
Domino and OLE Automation

361
Coding the CORBA Applet

359

CORBA and Domino

358
Internet Inter-ORB Protocol (IIOP)

358
CORBA Architecture

357
Benefits of Using CORBA

357
CORBA/IIOP

353
Creating a Java Agent

351
Applet Calls to lotus.domino Package

349
Remote Calls to lotus.domino Package

431
Lesson 4 - Comment Your Code

431
Lesson 3 - Try to Standardize on a Web
Browser


431
Lesson 2 - Design the Outlook as
Thoroughly as Possible

431
Lesson 1 - Use Professional Graphics

431
Creating Your Application

430
Lesson 7 - Project Scope Creep

430
Lesson 6 - Even Domino Has Limitations

430
Lesson 5 - Planning Your Application

430
Lesson 4 - Understanding the Deliverables
.
429
Lesson 3 - Ensure That There is a Real
Business Need

429
Lesson 2 - Communication

429

Lesson 1 - Getting a Business Sponsor

429
Before You Write a Single Line of Code

429
12 Develo
p
ment Dos and Don’ts

428
Summary

427
Accessing LSX Class Property Arguments
.
425
Accessing LSX Class Method Arguments

423
LSX Design Decisions

419
Understanding the C++ LSX Class
Framework

416
Architecture and Advanced Design

415

LSX Registration

415
LSX Installation

414
The LSX Runtime Environment

414
Deploying an LSX

414
The LSXRUN Tool

413
The LSXTEST Tool

413
Testing an LSX

409
Using LotusScript System Services

408
Using Data Type Descriptions

406
Using LSX Data Types

406

Compiling the LSX

viii Lotus Domino Release 5.0: A Developer’s Handbook
448
Populating the Lotus Notes Database With
Key Data

446
Creating the Activity Document

444
Creating the Lotus Notes Database

443
Creating a Simple RealTime DB2
Connection

442
The DECS Administrator Navigator

441
Using the Connection Server Administrator

441
Configuring DECS

440
Running LCTEST

440

Testing Connections With LCTEST

439
Setting Up Connectivity to DB2

438
Supported Data Sources

437
Installing and Running DECS

437
13 Introducing DECS and
Database Connectivit
y

436
Summary

435
Lesson 2 - Get Feedback From Your Users
.
435
Lesson 1 - Define a Maintenance Server

435
When Your Application is Deployed in
Production

435

Lesson 3 - Document the Application
Requirements

434
Lesson 2 - Supply an Installation Test
Verification Case

434
Lesson 1 - Perform Quality Assurance of
the Application

434
Handing Over Your Application to
Production

432
Lesson 9 - Be Aware of Performance
Options

432
Lesson 8 - Document Your Application

432
Lesson 7 - Provide Meaningful Error
Messages

432
Lesson 6 - Use the Appropriate Design
Elements and Events


431
Lesson 5 - Try to Avoid Hard Coding

498
Example: Accessing Notes From Visual
Basic

497
Known Limitations or Problems With
NotesSQL

493
Summary of Supported ODBC SQL
Grammar

490
Data Types

490
View Column Definitions

489
Using Notes Views as Indexes

488
Column, Index, Table, and View Names

486
Using SQL Tables from Derived Forms
and Views


485
The Universal Relation

485
Mapping Notes Names to SQL Names

484
Connecting to a Data Source

480
Adding a Lotus Notes Data Source

479
Installing NotesSQL

478
Hardware and Software Requirements

478
When to Use NotesSQL

477
Technical Advantages

473
SQL Grammar Conformance Level of
NotesSQL

472

What is ODBC?

471
NotesSQL

471
14 Using Other Database
Connectivit
y
Tools

470
Summary

467
Multi-Value Data

463
Updating Data From Notes to an External
Source

452
Reading Data From an External Source
into a Notes Form

452
LotusScript Extension for Domino
Connectors

449

Accessing More Than One Table

448
Running the DECS Activity

Contents ix
554
Running Multiple Instances of an Agent

551
Digging Deeper

550
How Does This Work?

546
Server Side Processing for Web Applications
.
533
LS:DO Class Library

529
How to Trace and Debug LS:DO

529
Mapping Data Types Between RDB
and Notes DB

528
USELSX Statement to Enable LS:DO


527
Registering ODBC Data Sources

526
Software Requirements

525
Performance

525
Functionality

524
Programming Environment

524
Differences Between LS:DO and ODBC

524
When to Use LS:DO

523
Architecture

522
Concepts

521
What Is LS:DO?


521
LotusScript:DataObject (LS:DO)

519
What is ODBC?

518
Database Access Facilities

518
Data Resource Access

518
LotusScript Data Objects and ODBC

516
To Configure and Run Domino Driver for
JDBC Using IBM WebSphere

516
Using IBM WebSphere Application Server
.
516
Using IBM VisualAge for Java Version 1.0
.
509
Creating a Connection

507

Domino Driver for JDBC Data Types

506
What is JDBC?

506
Domino Driver for JDBC

502
Example: Using NotesSQL With Microsoft
Active Server Pages (ASP)

599
Hide-When Formulas

599
Use Formulas Instead of Simple Actions

598
Temporary Variables

597
Use Aliases

593
In General

593
Preparing Your Database — Tips for
Developers


592
The Difference Between Updating and
Rebuilding

591
Skipping Terms During Tagging Versus
Marking Terms as “Do Not Translate”
.
589
Building Language Databases

586
Translation

584
Preparing the Glossary for Translation

577
Running Checks Using
Pseudo-Translation

566
Setting up the Project and Tagging the
Database

565
Localizing an Application

565

The Synchronizer

564
The Standalone Tagger

564
The WorkBench

563
What is Tagging?

563
Domino Global WorkBench Databases

562
Concepts, Databases, and Tools in Domino
Global WorkBench

559
15 Domino Global WorkBench

558
Summary

557
@DBCommand

557
@DBLookup


556
@DBColumn

556
How to Use @DB Functions

555
When to Use

555
Using @DB Functions to Access Other
Databases Through ODBC

x Lotus Domino Release 5.0: A Developer’s Handbook
635
Domino URL Command Syntax

635
A
pp
endix A Domino URLs

634
Summary

633
Denying a Request

631
Approving a Request


626
Submitting a New Form for Approval

624
Creating a New Request

624
The Major Fields

623
A Closer Look at the ApprovalLogic Subform
.
619
How Is the Approval Cycle Database
Organized?

619
How Does a Form Flow?

619
Approval Cycle Database: Design

618
Working With the Request

617
Using the Workflow Document

613

Creating a Database Using the Approval
Cycle Template

612
Workflow Design Considerations

611
What is Workflow?

611
16 Domino Ad Hoc Workflow

610
Summary

607
Create a Design Synopsis

607
Make a Backup

607
Preparing an Existing Database

606
Keep Translators Informed

605
LotusScript


604
Pay Attention to Length Limitations

604
Fonts

602
Keywords

602
Handling Translatable Lists

600
Concatenated Sentences

600
Avoid Shared/Personal on First Use
Folders or Views

599
Exclude Paragraphs From Translation
Using the DO_NOT_TAG Style

681
ITSO Redbook Evaluation

671
Index

667

IBM Intranet for Employees

667
How to Get ITSO Redbooks

665
Redbooks on CD-ROMs

664
Other Lotus-Related ITSO Publications

663
International Technical Support Organization
Publications

663
Related Publications

661
How to Get the Web Material

661
Additional Web Material

657
S
p
ecial Notices

655

CORBA Objects

651
A
pp
endix C CORBA Internals

649
Keys for Editing Documents or Designing
Domino Objects

649
Dialog Boxes

648
Function Keys

647
Workspace Keys

647
A
pp
endix B Shortcuts

645
Searching for Text with Domino Search
URLs

643

Advantages of Using Keys Instead of
Universal ID

642
Opening Documents by Key

642
Opening an Anchor Link

641
Opening, Editing, and Deleting
Documents

639
Opening Framesets, Pages, Forms,
Navigators, and Agents

637
Opening Servers, Databases, and Views

Contents xi


xii Lotus Domino Release 5.0: A Developer’s Handbook
This document describes how to develop applications using Lotus Domino
Release 5.0.
The earlier chapters in the book introduce some of the basic design elements
of a Domino database such as the database itself, forms, views, folders, and
navigators. Those readers that are familiar with developing applications
using earlier releases of Lotus Domino may want to move straight to the

chapters that introduce the new features in Domino 5.0, such as framesets,
pages, outlines, resources and headlines.
The book then describes how to use the programming languages available in
Domino Designer; the formula language, LotusScript, JavaScript, Java, IIOP
and CORBA, C++ API and the LSX toolkit. Some good practical advice on
Domino development do’s and don’ts is then outlined before discussing the
Domino Enterprise Connectors (DECS) which are used to access data from
external data sources, along with chapters describing how to use NotesSQL,
ODBC, and the LotusScript Data Object (LSDO).
The book then explains how to create multilingual international applications
for Domino and the Web using the Global Workbench tool.
Finally, the topic of creating workflow applications with the Approval Cycle
template is covered with an in-depth look at the LotusScript in the
ApprovalLogic subform.
This redbook was written for Domino technical specialists and
programmers, customers, IBM Business Partners, and the IBM and Lotus
community who need a good technical understanding of how to develop
applications using Lotus Domino R5.0.
The Team That Wrote This Redbook
This redbook was produced by a team of specialists from around the world
working at the International Technical Support Organization Center at Lotus
in Cambridge, Massachusetts, USA.
Fiona Collins is an International Technical Support Specialist for Notes and
Domino at the International Technical Support Organization Center at Lotus
Development, Cambridge, Massachusetts. She manages projects whose
objective it is to produce redbooks on all areas of Domino. Before joining the
Preface
xiii
ITSO in 1996, she provided technical support for Lotus Notes/Domino and
the AS/400, for Lotus and IBM in the UK.

David Morrison is a senior Lotus Notes consultant working for IBM
e-business services in the United Kingdom. David specializes in designing
and developing large scale Internet and data integration applications based
on Lotus Notes and Domino technology. David has over 10 years experience
working in the IT industry, with five of these spent working with Lotus
Notes and Domino.
Søren Peter Nielsen works as an IT Architect for IBM Global Services in
Denmark with Domino development and Domino infrastructure. During his
more than 15 years at IBM, Søren has worked with solutions for industries
like Small and Medium Business, Banking, Insurance, News & Media,
Manufacturing, Public Sector, Travel & Transportation, and Petroleum.
Søren is a Certified Lotus Professional at the Principal level in Application
Development and System Administration.
Sami Serpola works in IBM e-business Services in Finland as a Lotus Notes
and Domino Application Development Consultant, designing and
developing Lotus Notes and Domino solutions for IBM customers.
Reinhold Strobl works for the IBM Product Support Services Department in
Vienna, Austria, where he provides specialist support to customers for Lotus
Domino and support for other aspects of application development. Before
joining the IBM support organization, Reinhold was a software designer and
developer working out of an IBM software development laboratory.
A number of people have provided support and guidance. In particular, we
would like to thank Chris Reckling, Product Manager for Domino Designer.
In addition, we would like to thank the following people from Lotus
Cambridge (unless otherwise noted):
• Stephen Auriemma
• Mike Bisacre
• Janet Bowers, Lotus Notes Application Center of Competence,
IBM Boulder
• Martin Broekhuysen

• Paul Castiglione
• Shu Chen
• Bill de la Vega
• Gary Devendorf
• Carl Hero
• Bernadette Kelly
xiv Lotus Domino Release 5.0: A Developer’s Handbook
• Carl Kriger
• Thierry Mayeur
• Avshalom Neer
• Mary Peterson
• Moshe Rappoport, IBM Zurich
• Michael Roche
• Mark D Smith
• Barry Wand, IBM Global Services Notes Database team, IBM Austin
• David Watkins, e-business Services, IBM UK
• Lauren Wendel
• Stanley Wood, IBM Global Services Network Computing Office
• Graphic Services, Lotus North Reading
Comments Welcome
Your comments are important to us!
We want our redbooks to be as helpful as possible. Please send us your
comments about this or other redbooks in one of the following ways:
• Fax the evaluation form found at the back of this book to the fax number
shown on the form.
• Use the online evaluation form found at
/>Send your comments in an Internet note to

Preface xv




The Domino™ Server family is an integrated messaging and Web
application software platform, for growing companies that need to improve
customer responsiveness, and streamline their business processes.
Domino, the only solution built on an open, unified architecture, is trusted
by the world’s leading companies to deliver secure communication,
collaboration and business applications. Domino R5.0 servers set a new
standard for rich Internet messaging, ease of administration, and integration
with back-end systems.
This chapter describes the Domino R5.0 Server Family, the services Domino
R5.0 offers, and the clients for Domino R5.0.
Domino R5.0 Server
The Domino R5.0 Server is offered in different packages, to allow customers
to pick the functionality that meets their current requirements and extends
that functionality as their requirements change in the future. We will briefly
describe the three Domino R5.0 servers below.
Domino Mail Server
Domino Mail Server is the newest member of the Lotus® Domino server
family. Domino Mail combines support for the latest Internet mail standards
with the advanced messaging capabilities and enterprise-scale reliability and
performance of Lotus Domino. Its integrated, cross-platform services include
Web access, group scheduling, collaborative workspaces, and newsgroups —
all accessible from a Web browser or other standards-based client.
Domino Mail Server is used for messaging only. Customers that want to
deploy their own applications on the Domino server should consider
Domino Application Server or Domino Enterprise Server.
Domino Application Server
Domino Application Server is the leading integrated messaging and
applications server. It delivers best-of-breed messaging as well as an open,

Chapter 1
What is Lotus Domino?
1
secure Web application platform. The server easily integrates back-end
systems with front-end systems business processes.
This is the natural evolution of the Lotus Notes server from which Lotus
Domino originates.
Domino Enterprise Server
Domino Enterprise Server is the server for customers requiring
mission-critical, highly scalable deployments with uninterrupted access,
and maximum performance under all conditions. It extends the functionality
of Domino Mail and Domino Application Servers with high availability
services such as partitioning, clustering, and billing.
This product was previously called Domino Advanced Services.
Services Offered by Domino Servers
Lotus Domino Servers offer a wide range of services. We will briefly
describe the most important ones.
Object Store
Documents in a Domino database can contain any number of objects and
data types, including text, rich text, numerical data, structured data, images,
graphics, sound, video, file attachments, embedded objects, and Java™ and
ActiveX applets. A built-in Full text search engine makes it easy to index and
search documents. The object store also lets your Domino applications
dynamically present information based on variables such as user identity,
user preferences, user input, and time.
Directory
A single directory manages all resource directory information for server and
network configuration, application management, and security. Domino includes
user account synchronization between NT and Domino and is Light Weight
Directory Access Protocol (LDAP) compliant. The directory is the foundation

for easily managing and securing your Internet and intranet applications.
Security
The Domino security model provides user authentication, digital signatures,
flexible access control, and encryption. Domino security enables you to
extend your intranet applications to customers and business partners.
Replication
Bi-directional replication automatically distributes and synchronizes
information and applications across geographically dispersed sites.
Replication makes your business applications available to users around your
company or around the world, regardless of time or location.
2 Lotus Domino Release 5.0: A Developer’s Handbook
Messaging
An advanced client/server messaging system with built-in calendaring and
scheduling enables individuals and groups to send and share information
easily. Message transfer agents (MTAs) seamlessly extend the system to
Simple Mail Transfer Protocol (SMTP)/Multipurpose Internet Mail Extension
(MIME), x.400, and cc:Mail™ messaging environments. The Domino
messaging service provides a single server supporting a variety of mail clients;
Post Office Protocol V3 (POP3), Internet Message Access Protocol V4 (IMAP4),
Message Application Programming Interface (MAPI), and Lotus Notes clients.
Workflow
A workflow engine distributes, routes, and tracks documents according to a
process defined in your applications. Workflow enables you to coordinate
and streamline critical business activities across an organization, and with
customers, partners, and suppliers.
Agents
Agents enable you to automate frequently performed processes, eliminating
tedious administration tasks, and speeding your business applications.
Agents can be triggered by time or events in a business application. Agents
can be run on Domino servers or Lotus Notes clients.

Development Environment
Domino Designer is general-purpose client software featuring an integrated
development environment (IDE) that provides easy access to all features of
the Domino server. We will focus on the features and functions of Domino
Designer as well as the Domino Object Model in this redbook.
Domino Object Model
Domino offers a unified model for accessing its objects through back-end
classes, whether you use LotusScript® or Java. This allows you to switch
programming languages without having to learn new ways to program for
Domino. Refer to Chapter 11: Advanced Domino Programming for more
information on the Domino Object Model.
Live Integration with Enterprise Data
DECS (Domino Enterprise Connection Services) is part of the Domino
Server. It is a Lotus developed technology, first shipped with NotesPump™
2.5, that supplies an easy-to-use forms-based interface to achieve deep,
integrated connectivity to external data from Domino applications. This
allows developers to map fields in forms directly to fields in relational
database tables, without storing any data within the Domino database.
Scalability and Reliability
Domino Enterprise Server enable you to cluster up to six Domino servers to
provide both scalability and failover protection, to maximize the availability
Chapter 1: What is Lotus Domino? 3
of your groupware and messaging applications. Real-time replication
technology keeps the clustered servers synchronized.
Note
A Domino server is not the same as a file server. A file server
provides access to shared resources such as printers and applications, and
also manages network activity. Domino is an application-level server process
that provides services necessary for the effective management of
communications and applications.

Clients for Domino R5.0
Previous versions of Lotus Domino had one, all-purpose client that would be
used by users, administrators, and application developers. With Lotus
Domino Release 4.6, a special client for developers called Lotus Notes®
Designer for Domino was introduced.
As a result of the strong focus on ease-of-use in the design of Lotus Domino
R5.0, three individual clients are now available. They are:
• Notes™ R5.0: the users client
• Domino Administrator R5.0: the administrator’s client
• Domino Designer R5.0: the developer’s client
Most of the functionality in Lotus Domino can also be accessed from Web
browsers. The Lotus Domino server includes a Web administration
application. This redbook has its focus on Domino Designer R5.0. Chapter 2
is dedicated to an overview of Domino Designer R5.0. We will give a brief
overview of the two other clients below.
Notes R5.0
Lotus Notes is the leading integrated e-mail and collaborative software for
the Internet. In R5.0, Notes offers a more open, Web-like, customizable
environment, so you can work the way you want, with all the power you
expect from Notes.
The new Navigation Bar gives you instant forward, back, stop, and refresh
actions, as well as access to search engines and the Web, from wherever you
are in Notes.
Notes R5.0 has Bookmarks so that you can create links to Web pages,
application views, documents, and forms for instant access. The new
Window tabs allow you to keep track of multiple open windows, and
navigate between them quickly. Notes R5.0 also has enhanced search
capabilities, including search-by-form, fuzzy search, and the ability to
perform a domain search — making information tracking quick and intuitive.
4 Lotus Domino Release 5.0: A Developer’s Handbook

Headlines
With Notes R5.0, keeping on top of the latest and most important
information is easy. The Notes R5.0 customizable Headlines page lets you
select the information that you want to see first. You’ll be alerted to
important e-mail messages, tasks, or meetings for the day. You can even
receive updates from intranet applications and view Web content
dynamically — all from Headlines.
Each item on the Headlines page is a point of entry, so if you’ve received an
urgent e-mail message, the full document is just a mouse click away. Plus, IT
organizations can customize Headlines to feed corporate intranet
information right onto the user’s desktop.
Enhanced E-mail and Calendaring
The new mail and calendaring features in Notes R5.0 take the best of
industry leading applications, such as cc:Mail and Lotus Organizer, and
make them better. Notes R5.0 continues to build on its powerful integration
by combining your mail and calendar preferences. You can preset
preferences for every e-mail you send, including automatic spell check and
sending all mail high priority with return receipt. Notes R5.0 mail also
supports signature files, giving you a simple way to identify yourself and
add pertinent information to every e-mail you send.
Chapter 1: What is Lotus Domino? 5
If you manage multiple calendars, Notes R5.0 now gives you the ability to
view more than one calendar at a time. Choose to access multiple calendars
for a “quick view” of who is available, or get more detail on another user’s
schedule if necessary. And when you need to take your calendar with you,
Notes R5.0 gives you multiple print formats to choose from. Notes R5.0
streamlines the process of managing resources across domains, giving you
greater access and control over conference rooms, AV equipment, and more.
Installation and Setup
Setting up Notes R5.0 is easy. Integration with dial-up networking entries

means connections are created automatically for you as you install the
software. Notes R5.0 also offers several preset configurations for even faster
user setup. It’s easier than ever for you to access your ISP mail account right
from Notes. And if you’re upgrading, you’ll be ready to go as soon as you
finish installation.
A Powerful Tool for Any Infrastructure
Current Notes users can continue to take advantage of all their Domino
server-based applications like e-mail and calendaring. In addition, Notes
R5.0 offers full standards support including POP, IMAP4, SMTP, LDAP v3,
MIME, S/MIME, HTML, Java, Javascript, and X.509 certificates. So now,
even users with non-Domino, standards-based back ends or that use ISP
hosted mail at home will benefit from the power of Notes R5.0.
Domino Administrator R5.0
Domino Administrator R5.0 is a new, integrated administration control
panel that provides simple, yet flexible administration. Administration
benefits are universal whether you are a smaller company just getting
started with Domino, or an enterprise managing a large-scale deployment,
with thousands of people and applications.
The Domino Administrator R5.0 utilizes the Windows Explorer metaphor,
providing an easy, intuitive interface and allowing drag-and-drop
functionality for common administration tasks, such as moving a user.
Important new server monitoring features now allow administrators to
proactively monitor and manage an environment. Finally, administrators
have the ability to centrally configure, manage, and enforce user desktop
settings. All of these administration enhancements, and more, result in the
most comprehensive server management tools and reduce the cost of
ownership.
6 Lotus Domino Release 5.0: A Developer’s Handbook
Domino Directories Administration Tab
The Domino Administrator provides logical groupings for administration

functions and tasks via five specific interfaces reached via tabs across the top
of the Administrator UI. These tabs are People & Groups, Configuration,
Files, Server, Messaging, and Replication. On each tab, the UI is divided into
three primary work areas or “panes.”
• On the left, the Server Scope Pane gives administrators a complete
hierarchical view of your Domino Server deployment.
• The Context Pane object on the top gives administrators a view of the
specific database, directory, group, server, etc. that you are working on.
• The Results Pane on the bottom gives administrators immediate
feedback and results of tasks you invoke.
• The Toolbar along the right side provides context-specific administration
tools (also available via right-mouse click).
The People & Groups Tab in the Domino Administrator provides a central
interface for all user and group management, such as user registration,
certification, and group management.
From the Files Tab, Administrators can easily manage files and applications.
Context-sensitive tools let administrators easily perform common database
tasks such as check the disk status, move, compact, and more.
From the Server Tab, Administrators can get a graphical representation of
the state of their servers, with details on the current status of specific tasks.
Chapter 1: What is Lotus Domino? 7

×