Table of Contents
| Previous Page
| Next Page
Introduction to Domino Object Model
The Domino Object Model is a combination of a conceptual model along with a set of programs.
The conceptual model provides the framework for database access from programming languages such as LotusScript and Java and is the same for each programming language, with unique syntax for each environment.
Lotus provides a set of interfaces or APIs, unique for each language, that allows the language to access its core functions. For example, although LotusScript and Java are two different programming languages, the Domino functionality is provided for both.
The DOM can be broken into two areas:
- Front-end or UI classes
- Back-end or Data classes
Basically front-end classes are used to work with and manipulate objects directly visible to the user at that instant and the back-end classes are used to work with objects like stored documents or views.
Domino allows you to write an application that will run on a Web browser and access Domino databases. Since web browsers typically do not know anything about Notes or Domino, being able to access Domino databases from the Web browser in a client machine requires quite a bit of development the scale of which incidentally has been reduced a lot with the advent of XPages in 8.5.
Introduction to HTML CSS XML and JS and their role in XPages
Introduction to Hyper Text Markup Language
Introduction to Cascading Style Sheets
Introduction to eXtensible Markup Language
Role of these technologies in XPages
Although XPages utilizes JSF and the Dojo toolkit on the server end, the development is done with the help of new Eclipse based Domino Designer which contains an built-in XML based source code editor.
XML forms the ‘X’ in XPages. Almost entire base XPages code when generated is in XML with its specific tags and developers can easily relate the code to the XML structure.
Simple actions are available for common operations and almost every property is computable using JS.
There is also built-in support for AJAX functions.
The entire look and feel of an XPages based application can be governed by CSS. There is full support for all the in-line classes of CSS available. You can also use CSS file resources just like in earlier versions. All the controls in XPages let you select a style from the CSS associated with the page. While you can set the font type, size, margins , etc., it is easier to create similar pages if you use a style sheet instead. With a style sheet, you only have one place to change to modify the style of a heading through out the application.
All the HTML tags and attributes are supported by XPages and can be easily embedded in the code as-is. Most HTML will be entered through the source view of the page were you see the actual XML source for the XPage.
Introduction to JSF
For an introduction to JSF and to better understand how this relates to Domino 8.5.1, please refer to this section (XPages definition
A peek inside Dojo
Dojo consists of 3 parts:
Core - Ajax, events, packaging, CSS-based querying, animations, JSON, language utilities, and a lot more. All at 26K (gzipped). Full support for CSS classes or inline styles
Dijit - Skinnable, template-driven widgets with accessibility and localization built right in—the way you want it. From accordions to tabs, we have you covered. Uses CSS file resources
DojoX - Inventive & innovative code and widgets. Visualize your data with grids and charts. Take your apps offline. Cross-browser vector drawing. And a lot more.
Lotus has modified some of the control to work better with Domino.
Rich Text Control - Now if your users need to enter more then just plain text, you can use the rich text control. It provides for a lot of control and it's improving with each release. Content entered through the control is saved in MIME format and will be converted to Notes CD if edited in a Notes client.
Warning - not everything converts correctly. The areas that may cause you issues are:
- Fonts - Web fonts are x-small, small, medium, large, etc while Notes fonts are point sizes.
- Table borders
- Embedded images – visible but lost when saved
- Tab tables – only the visible row is saved
- “Hide when” - if hidden from web are lost during the save
For more information on Dojo and it's use with the Domino server and client see this article in the designer wiki. For information on the dojo library go to the home of the dojo toolkit: http://dojotoolkit.org/
Do I need to learn JAVA
The answer to this question is “NO”. Although XPages run on top of JSF there is absolutely no need for developers to learn Java.
Also, it is highly recommended that you get familiar with the Eclipse UI and terminology before using the new Domino Designer otherwise it can be a little difficult to get used to.