Lotus Training Overview
The Domino HTTP server task is extremely versatile. In addition to its HTML rendering tasks, it also executes several types of design elements coded in Java or LotusScript:
- Agents run by a Form’s WebQueryOpen and WebQuerySave events.
- Agents run by the ?OpenAgent URL command.
- Web Services that run in response to a SOAP request message.
This course covers the development and security of these design elements. You will also learn debugging and run time error handling techniques.
This course also takes a close look at Web Service client requirements and teaches you how to code a simple Web Service client using a SOAP toolkit.
Lotus Training Learning Objectives
In this course, you will learn how to:
- Describe the differences and application of Agents run from a Form’s WebQueryOpen and WebQuerySave events and those run from the ?OpenAgent URL command.
- Code Agents run by the Form’s WebQueryOpen event to work within the document context as well as perform lookups to other databases.
- Conditionally run WebQueryOpen Agents depending on document state.
- Define the server, database, and Agent security measures and ensure that Agents are run in the proper context.
- Code Agents run by the Form’s WebQuerySave event to translate and validate user entries and provide useful feedback to users and redirect them to natural landing points in the application.
- Code Agents run by the ?OpenAgent URL command to perform powerful actions and produce reports from Domino data, and learn different ways that a browser can run the ?OpenAgent command.
- Debug Agent code and add run time error handling routines as well as how to analyze Agent-specific browser errors.
- Define the key components and protocols of Web Services technology.
- Use Web Services Explorer to perform basic testing of a Web Service.
- Describe the differences between the various Web Services programming models and SOAP message formats as they apply to Web Services design element properties.
- Code Web Services using LotusScript that accept simple and complex data types as parameters.
- Code a simple Web Services client that runs from a browser and uses a SOAP toolkit.
- Debug Web Services provider and client code and handle runtime code errors as well as SOAP faults.
- Employ the Remote Debugging, Agent Logging, Profiling, and DDM Probe features to fully analyze Agent and Web Service operation and performance.
Lotus Training Audience
This course is designed for experienced programmers well versed in using Domino Designer 7. It assumes that you have:
- thorough knowledge of the Domino Designer 7 development environment, including Form and View design, as well as how to use properties boxes, and how to set the ACL
- mastered the Topics covered in these courses:
- Domino Designer 7: Basic Notes Applications
- Domino Designer 7: Basic Browser Applications
- knowledge of Web technologies, including servers, browsers, HTML, Cascading Style Sheets, and some basic JavaScript.
While mastery is not expected, you should have a working understanding of LotusScript and the various Notes product objects.
This course is part of a series of Domino Designer 7 training courses. Follow these paths to master all aspects of developing applications using Domino Designer:
Domino Designer 7: Basic Notes Applications provides the base knowledge for this additional training:
Client Track
- Configure Domino to use DB2 as a database engine and build applications that access relational data, DB2 for Domino 7 Administrators and Developers.
- Specialize in programming Notes applications to respond to built-in user interface features, Domino Designer 7: Special Notes Features.
- Convert an application written for Notes clients to be used in browsers, Domino Designer 7: Basic Browser Applications.
- Provide data to cutting-edge Web applications, Domino Designer 7: Web Agents and Web Services.
Language Track. These languages apply to both Notes and browser clients:
- Learn sophisticated application techniques that fully exploit the formula language in Domino Designer 7: Formula Language.
- Develop sophisticated applications and Agents with LotusScript in Domino Designer 7: LotusScript.
- Add powerful client-side scripting to browser applications in Domino Designer 7: JavaScript.
Lotus Training Course duration
This course is sold as a 2-day course.
Lotus Training Course outline
Topic 1: Introduction
- Agents
- Web Services
- What follows
- Exercise: Create demonstration database
Topic 2: WebQueryOpen Event Agents
- Form computation sequence
- Step 1: Create the Agent and set its properties
- Step 2: Code the Agent
- Step 3: Call the Agent from the WebQueryOpen event
- Agent authority
- Step 4: Set the Agent properties Security tab options
- Who can run the Agent
- Database ACL
- Exercise: Set default email address in Review form
- Agents and document access Fields
- Prevent Agents from being run out of context
- Exercise: Prevent Agents from being run out of context
Topic 3: WebQuerySave Event Agents
- Form computation sequence
- $$Return or WebQuerySave event?
- Create WebQuerySave Agent
- Print statements
- When Print statements are ignored
- Prevent document from being saved
- Exercise: Part Form validation
Topic 4: Web Agents
- Create a Web Agent
- Call a Web Agent
- Pass argument(s) to a Web Agent
- Agent context versus document context
- Parse URL arguments
- Programming the Agent
- @Command([RunAgent])
- Exercise: Browser-based reporting
- Examples: Using @Command([RunAgent])
- Example: Download view in Excel Web Agent
Topic 5: Web Agent Error Handling
- WebQueryOpen event Agents
- WebQueryClose event Agents and Web Agents
- Runtime error handling
- Web server response codes
- Common 4xx and 5xx response codes
- Agent-specific browser errors
- HTTP server performance and Agents run by browsers
Topic 6: Web Services Concepts
- Web Services basics
- Definitions
- Domino 7 and Web Services
- What Web Services are publicly available?
- Testing a Web Service
- Exercise: Web Services Explorer
- SOAP programming models and formats
- Exercise: Multiple, detailed stock quotes
- Web Services versus Web Agents
- Web Services clients
Topic 7: Web Service Properties
- Domino-based Web Service from Web Services Explorer
- Create Web Service design element
- Import WSDL file
- Web Service properties and the WSDL
- Show WSDL
- Basics tab
- Advanced tab
- Security tab
- Get Domino Web Service information from a browser
- Domino-based Web Service from browser
Topic 8: Web Service Programmers Pane
- Code the operations
- Web Service context
- Resulting WSDL
- WSDL from the client perspective
- Greeting Web Service code
- Simple data types for request and response parameters
- Explicit data type conversion
- Multiple request parameters
- Complex data types
- Web Service accepts an array as parameter
- Web Service responds with array
Topic 9: Consume Web Services
- PocketSOAP Examples page
- VBScript
- PocketSOAP
- Greetings from Domino button
- Send array to Web Service
- Receive array from Web Service
- Exercise: Find Group members
- Class objects
- Exercise: Save changes to a Part
- LotusScript and PocketSOAP
Topic 10: Web Service Error Handling
- SOAP faults
- SOAP Fault Example page
- Web Service-side error handling
- Client-side error handling of VBScript errors
- Web Service system-generated SOAP faults
- Web Service developer-defined SOAP faults
- Client-side error handling of a SOAP fault
Topic 11: Remote Debugging, Logging, and Profiling
- Remote LotusScript Debugger
- Java debugger support
- Domino Server Log
- Private Agent log
- Custom Agent Log
- Agent performance and Agent Profiling
- DDM Application Probes
|