This guide provides information on using HCL Domino Designer and programming language reference information.
Welcome to the LotusScript® Language section of Domino® Designer Help.
This chapter discusses the role that LotusScript® plays with HCL products, your operating environment, other programs, and interactive user applications.
Using LotusScript® and LS2J, you can access Java™ classes, giving you a powerful cross-platform extension to LotusScript. Developers can access Java in LotusScript programs as a set of predefined LotusScript objects. This set of objects allow LotusScript to use already created Java classes that are available in script libraries or found using the classpath.
LS2J introduces the concept of a Java™ object reference. Similar to an OLE object reference, it is not a predefined class; rather, it represents a runtime instance of a Java object. Its properties and methods are determined at run time.
JavaClass is the reference to a Java™ class. You can create an instance of the object, or you can look at the static properties (fields) and invoke static methods of the class.
This property is the name of the JavaClass object. The property is read only.
The following features are new for developers in HCL Domino® Designer 12.
Accessibility features assist users who have a disability, such as restricted mobility or limited vision, to use information technology content successfully.
Welcome to the Application Design section of Domino® Designer Help.
Welcome to the Application Management section of Domino® Designer Help.
Domino® Query Language (DQL) is a facility running on a Domino server that provides a terse, shorthand syntax for finding documents. It supports a wide variety and complexity of search terms. It leverages existing design elements, avoiding the need to write detailed code to access them. DQL consolidates all methods in Domino for searching document contents.
Composite applications are a key element in a service-oriented architecture (SOA) and contextual collaboration strategy. The ability to create and edit composite applications lets you easily integrate different types of components and technologies.
Domino® Designer includes two types of design elements to assist you in managing data contained in DB2® enabled Notes® databases:
This section contains general guidelines and examples that show where to use Java, LotusScript, and the formula language.
This section documents the formula language.
This chapter introduces LotusScript® and describes, in general terms, how to use the script editor to write and modify scripts, how to compile scripts, and how to use the debugger to locate problems in the logic of your applications.
This chapter describes the rules for writing the basic elements of a script in the LotusScript® language.
This chapter provides information about LotusScript® constants and variables and the data types of the values that they can represent.
This chapter describes the set of LotusScript® operators, how they may be combined with operands to form expressions, and how those expressions are evaluated.
This chapter describes file handling in the LotusScript® language.
This chapter describes error processing in the LotusScript® language.
This chapter describes two kinds of custom data structures that you can define in LotusScript®. Each can hold data of different types in a single data structure.
The flow of execution of a script generally follows the sequence of statements in the script. This chapter describes the behavior of particular statements that alter the flow of execution.
This chapter describes how to use multiple threads and synchronization to manage HTTP agents with Domino®.
HCL software provides the environment in which you create, debug, and run LotusScript® modules. HCL software applications that work with LotusScript supply their own application programming interface (API), which lets you use product functionality and create and manipulate product objects from within a LotusScript program. A HCL software API is effectively an extension to the LotusScript language that is available when you are running that product.
HCL products lend themselves to building interactive applications, applications that incorporate user input and prompt the user to perform particular tasks. While each individual HCL software application provides its own user interface for interacting with scripts, LotusScript® supplies some fundamental tools that you can use with any HCL software.
LotusScript® provides a number of functions and statements that you can use to interact with other programs and the operating system. You can also use Object Linking and Embedding (OLE) to incorporate functionality and data from other Windows™ applications into your LotusScript applications.
LotusScript® allows you to call external C language functions. You implement external C functions inside a named library module that generally contains several C functions. With Windows™, this is a Dynamic Link Library (DLL). All Windows users have access to the libraries in the Windows application programming interface (API).
LS2J is the interface that allows data to transfer from the Java™ data type to the LotusScript® data type and allows LotusScript to execute Java object methods. LS2J allows LotusScript to create Java objects as if they are native to the LotusScript environment.
LS2J is implemented on all Domino® platforms. Your system must meet the following requirements:
To use LS2J from within Notes®, your LotusScript® code must include this line:
This script gets the Java™ class "Java.lang.Integer" and creates an object of that class in LotusScript®.
This method creates a JavaObject instance base of the JavaClass object.
This method returns a list of methods.
This method returns a list of properties.
This method returns a method from a JavaClass object.
This method returns a property.
JavaError is the main interface for LotusScript® to get information about Java™ errors that occur. Besides the standard exceptions mentioned in each object, the Java program can raise an exception for many other reasons. All these errors are caught and re-raised as the LotusScript Error-JavaError. Users can put an "on error" condition to catch any Java exceptions. The JavaException is not cleared until the method ClearJavaException is called. In order to find out more, the LotusScript user uses the JavaError object.
The JavaMethod class describes a public method in a JavaClass object. This class is used when the dot reference method fails (as happens with case sensitivity, method overloading, or long names).
The JavaMethodCollection class enumerates all the methods of a JavaClass object. This is a true enumerator class and you can use the ForAll statement on it.
The JavaObject Reference is the key to connecting with a Java™ object. It is returned from the CreateObject method of the JavaClass class or the GetJavaObject function. It is similar to an OLE reference and represents a Java object instance. The properties and methods are adapted automatically. It can be assigned only to a Variant.
The JavaProperty class describes a public property in a JavaClass object. This class is used for instances when the dot reference method fails (because of case sensitivity or long names).
The JavaPropertyCollection class enumerates all the properties of a JavaClass object. This is a true enumerator class and you can use the ForAll statement with it.
JavaSession is the starting point for access to the Java™ objects. The session attaches to the existing JVM, if there is one. If a JVM has not been started, the LotusScript® client tries to create the JVM and apply all the specified arguments. You can create as many JavaSessions as you want. All the resources created are associated with a particular session. Delete the session object to reclaim the resources.
LotusScript® provides mapping for Java™ basic data types and Java reference types.
This sample code demonstrates calling Java™ methods within LotusScript® using LS2J. Immediately following this example the code is modified slightly to demonstrate handling situations where there is a syntax discrepancy between Java and LotusScript.
This chapter describes the use of statements, built-in functions, subs, data types, and directives in the LotusScript® language.
This appendix describes LotusScript® language limits of several kinds: for example, the legal ranges in data representation, the limits on numerical specifications within statements, and the maximum number of different kinds of elements that can be defined in a script.
The LotusScript® language and functionality on the OS/2 platform, the UNIX™ platform, the Macintosh platform, and the OS/400® platform differ in various ways from the language and functionality described in the rest of this language reference. This appendix describes the differences.
This appendix provides an overview of REXX integration in the LotusScript® language.
This appendix lists the LotusScript® aliases and their equivalent text.
This chapter describes the compile-time error messages in the LotusScript® language.
This chapter describes the run-time error messages in the LotusScript® language.
This section documents the Java/CORBA classes.
Connectors provide native access to a wide variety of DBMS products, ODBC, the platform File system, Enterprise Resource Planning systems, and Transaction Processing systems.
As part of providing additional Java™ reference documentation, Domino® Designer ships with a help plugin that contains Javadoc™ for additional Domino Designer related APIs.
See Example: JClass property.