Login to TLCC site
Contact TLCC



IBM Ready for Social Business graphic

Intermediate Java Programming for R5 Notes and DominoPrint Course Information
Enhance your Java skills with TLCC's Intermediate Java Programming course. Learn about the core Java classes to work with strings, numbers, vectors, arrays, and to read and write information. Learn web application techniques like performing field validation, preventing multiple submissions of incomplete forms, and passing data using URL variables. Build a cool web based order form that will hold multiple items. Use the Domino Objects for Java classes to access and work with Notes items, rich text items, documents, views, view entries and document collections. Use a Java agent to build reports to show the information in a database exactly the way you want. This course will take your Java programming capabilities to new levels and really boost your career!
Get this course and TLCC's Beginner Java course together at a great price!
Click here to get more information on this special offer!
Experienced R5 Domino developers who want to learn how to use Java in Notes and Domino applications. The recommended prerequisites are:
  • TLCC's Beginner R5 Domino Web Application Development
  • TLCC's Beginner Java Programming for R5 Notes and Domino
Course Details

Course Code: 5JAVA2


Course Title: Intermediate Java Programming for R5 Notes and Domino
Units: 16
Duration: 4 classroom equivalent days
Discussion Access: 4 months1

1. Up to 12 months access when purchased as part of a Curriculum Package.

Summary Description

Enhance your Java skills with TLCC's Intermediate Java Programming course. Learn about the core Java classes to work with strings, numbers, vectors, arrays, and to read and write information. Learn web application techniques like performing field validation, preventing multiple submissions of incomplete forms, and passing data using URL variables. Build a cool web based order form that will hold multiple items. Use the Domino Objects for Java classes to access and work with Notes items, rich text items, documents, views, view entries and document collections. Use a Java agent to build reports to show the information in a database exactly the way you want. This course will take your Java programming capabilities to new levels and really boost your career!

Audience and Prerequisites

Experienced R5 Domino developers who want to learn how to use Java in Notes and Domino applications. The recommended prerequisites are:

  • TLCC's Beginner R5 Domino Web Application Development
  • TLCC's Beginner Java Programming for R5 Notes and Domino
System Requirements

A single R5 Domino Designer client and a current browser. Access to the Internet is required to get instructor support.

Course Modules

Module 1 - Running Java Agents from the Web


This module describes various ways to use Java web agents in your Domino applications. Learn how to program specific form events to run a Java agent when the user opens or saves a document. Discover how to run a Java web agent directly from a URL command. Learn to troubleshoot Java web agents via browser output, error-handling, and logging techniques.
  • List the types of web agents that Domino supports.
  • Create and use a WebQuerySave agent.
  • Use HTML to create a web page that gets displayed after the user submits a form.
  • Use URL re-direction to display another web site or page.
  • Program and use a WebQueryOpen agent.
  • Understand the limitations of the WebQueryOpen agent.
  • Program a WebQueryOpen agent to set editable field values in a document.
  • Program a WebQueryOpen agent to set computed field values in a new or existing document.
  • Use a WebQueryOpen agent to access information about the browser session.
  • Call an agent from a URL.
  • Use CGI variables in agents that are not associated with any form.
  • Understand the effect of the Agent Manager fields in the Domino Directory's server documents.
  • Understand the difference between restricted and unrestricted agents.
  • Use browser output techniques for debugging.
  • Use error-handling techniques to handle Java run-time errors.
  • Set up your own Agent Log database and record agent activities and errors in it.
Module 2 - Working with Core Java Classes
In this module you learn more about the core Java classes. Many of the methods of the Domino object model return native Java objects and data types. This module introduces you to several of the most widely-used classes and provides examples of the native Java objects and data types.
  • Extend Domino functionality by importing Java class packages.
  • Distinguish between classes, base (or super) classes, and interfaces.
  • Use the String and StringBuffer methods of the java.lang package to manipulate strings.
  • Use String methods to parse multiple arguments from a URL query string.
  • Manipulate primitive numbers in Java.
  • Use casting to change the data type of numeric values.
  • Format numbers for output using methods from the java.text class package.
  • Explain what a numeric object is.
  • Use methods of the java.lang class to instantiate numeric objects.
  • Extract a primitive numeric value from a numeric object.
  • Perform type conversions on numeric object data.
  • Use the Reader and Writer class methods of the java.io package to read and output data.
  • Use InputStream and OutputStream class methods of the java.io package to read and output data.
  • Use the URL and URLConnection classes of the java.net package to connect programmatically to a web site.
  • Use the URL and URLConnection methods to get information about a website connection.
  • Use the URLEncoder class to prepare a string for use as a URL.
Module 3 - Working with Vectors and Arrays
Vector and Array variables are data storage structures that hold multiple values. Many properties and methods in the Domino Object Interface return vectors. This module covers the basics of creating, assigning, and manipulating arrays and vectors and explains how to generate and manipulate date/time information in Java.
  • Learn what's included in the java.util class package.
  • Understand the difference between arrays and vectors.
  • Know the definition and structure of an array.
  • Declare an array and assign its values.
  • Access and manipulate array values.
  • Understand the definition and structure of a vector.
  • Declare a vector and assign its values.
  • Access and manipulate vector components.
  • Create and use an Enumeration object.
  • Understand the difference between the Java Date and Calendar classes.
  • Use a Date object to store date/time information.
  • Create and manipulate a Calendar object.
  • Format dates in Java.
Module 4 - Working with Notes Items and Rich Text Items
This module focuses on techniques for creating and working with Notes items and Rich Text items.
  • Review the Document methods that operate on items in a Notes document.
  • Determine if a particular item exists in a document.
  • Access the value or values stored in various types of Notes items.
  • Change the value or values stored in the various types of Notes items.
  • Use Item methods to determine or control the attributes of a field item.
  • Create a Rich Text item in a Notes document.
  • Add text to a Rich Text item.
  • Add special characters, such as <TAB> and <RETURN> characters, to a Rich Text item.
  • Work with docLinks, embedded objects, and file attachments in a rich text field.
  • Use the RichTextStyle class to control the appearance of text characters that an agent appends to a Rich Text field item.
  • Use the RichTextParagraphStyle class to control the appearance of paragraphs of text that an agent appends to a Rich Text item.
Module 5 - Using Notes Item Techniques to Enhance Web Applications
This module will teach you several item manipulation techniques to enhance your web applications.
  • Validate item values in a WebQuerySave agent.
  • Prevent duplicate submissions of incomplete documents.
  • Pass data from one Domino database to another when a user submits a web form.
  • Develop a multiple-item sales order application.


Module 6 - Gathering Document Collections
Domino supports several searching techniques that return a collection of documents. For example, the search and FTSearch methods of the Database class both return document collections based on a search criteria. This module describes and demonstrates the techniques to gather a Notes document collection.
  • Learn about the DocumentCollection class and its properties and methods.
  • Navigate a document collection.
  • Gather a collection of response documents.
  • Search a view with the getAllDocumentsByKey method of the View class.
  • Search a database by using the search method of the Database class.
  • Understand what a full text search is
  • Determine if a database has a full text index.
  • Generate a full text index for a local database.
  • Programmatically execute a full text search with the FTSearch method of the Database class.
  • Reduce a collection with the FTSearch method of the DocumentCollection class.
  • Gather a collection of Profile documents.
Module 7 - Processing Document Collections
This module describes and demonstrates the techniques for processing a Notes document collection.
  • Mark an entire collection as processed by using the stampAll method.
  • Understand the unprocessed documents property.
  • Gather the documents that an agent has not processed.
  • Unconditionally mark as processed all of the documents in a collection.
  • Mark as processed only some of the documents in a collection.
  • Add a document to a collection.
  • Remove a document from a collection.
  • Use the removeAll method for mass deletions from a database.
Module 8 - Working with View Entries
The Domino Object Interface includes several classes to work with views. This module describes the view entry feature and details techniques for gathering and processing view information using the ViewEntryCollection, ViewNavigator, and ViewEntry classes.
  • Use the properties and methods in the ViewEntry class.
  • Gather a collection of view entries from a Notes view.
  • Navigate and process a collection of view entries.
  • Create a ViewNavigator object.
  • Use the navigational methods in the ViewNavigator class.
Module 9 - Adding Reports to Your Application
A Domino view may not be able show the information from the database in the format you need. An alternative is to create a report. This module describes the need for reports, the different reporting styles, and how to add reports to your Domino applications.
  • Understand the need for reporting in Domino applications.
  • Understand the requirements for structured data when creating reports.
  • Distinguish the several reporting characteristics and styles, including periodic, on-demand, and ad-hoc reports.
  • Use views as a report design tool.
  • Understand the limitations for using views for reports.
  • The three basic steps required to produce a report.
  • Distinguish criteria from summary reports.
  • Use dynamic tables as a versatile reporting structure.
  • Generate a criteria report.
  • Generate a summary report.