配色: 字号:
Domino_web开发与管理
2013-12-16 | 阅:  转:  |  分享 
  
Dominoweb开发与管理
1-1.Lotus的发展LotusNotes是Lotus(莲花)公司的旗舰产品,自1989
年问世以来,它便以其优越的性能赢得了用户,也逐渐为国内用户所熟识。多年来,Lotus不多强化和完善,功能越来越强大,性能越来越优良
。Lotus归于IBM旗下之后,经历三年时间的研发,推出了革命性的产品Notes6/Domino61-2.Lotus的发展No
tes/Domino系统基于客户机/服务器(C/S)技术。早期的客户机与服务器软件都被命名为Notes,1995年,web功能被添
加到了服务器软件中,Lotus公司降这种与互联网紧密结合的全新服务器软件更名为Domino,并一直沿用至今。从此浏览器/服务器(B
/S)构架的系统也可以使用domino来实现了。Domino服务器是应用和电子邮件服务器,它提供了链接客户机、传递邮件、控制数据库
在用户中的共享等各种功能的集成的服务。2.群集产品3。主要功能共享信息实时工作流信息存储邮件个人通讯录尽管Domi
no功能强大,但它也不是无所不能的,它不适用于实时性很强的应用、数据一致性要求高的应用和需要大量运算的应用。时间安排开发应用
(2-3个下午)管理(1-2个下午)1.3开发部件帧结构页面表单视图文件夹共享代码代理(agent
)代理是存储在数据库中的script小程序或其他程序。代理在Domino应用程序中可以完成多种任务。其中一个
典型的应用是完成当表单被发送时的响应。Domino代理可以使用LotusScript,Java或者Notes公式语言
编写。大纲大纲允许对应用程序提供友好的、便于维护的、可制定义的导航。大纲条目可以时现下列功能:与命名元素(页面
、视图等)链接。也web页面链接。执行操作(如运行代理)。大纲需要嵌入倒页面或者表单中这样才能呈现到用户面前。子表单类似
表单功能,但它不能用来创建文档,它是用来插入到表单中,这样主要用于一些多个表单用到同一内容,我们不必一个一个的拷贝,可以插入子表单
就可以了。域是包含单独类型信息的表单的命名区域,类似于关系型数据库的字段。操作就是可编程按钮,可以用来自动执行任务
Script库共享资源图象(jpg、gif、bmp…..)文件(任何格式的文件较多的为jshtml等)小程序(app
lete)样式表(css)数据连接其他数据库资源包括元素:图标,”使用数据库”文档,”关于数据库”文档,数据
库script.导航器(Navigate)在DominoWeb应用程序中,导航器是一种图形。Domino的设计
端提供了可视化工具使图形的创建非常简单。摘要对指定设计元素生成的设计摘要,包括创建时间,包含子元素等信息使用表单
关于表单表单是Notes应用的基础,它们决定了数据在输入输出过程中的显示方式;在一定程度上决定了在数据库中信息是如何存储的。如
果没有设计漂亮的表单,就不会有精美的Domino应用。如果你熟悉HTML的表单,开始时你可能会被Lot
usNotes的表单弄糊涂。和HTML表单一样,Notes的表单被用来从用户那儿获取信息(通常是通过可编辑的域
)。和HTML表单不一样的是,Notes的表单也被用来显示已经获取的信息。这些信息存储在称为文档的容器之中。
当你打开一个Notes表单时,填写完信息,选择保存。此时,在数据库中保存一个新文档。这个文档中包含了一个For
m域,它的值确认用来创建文档的表单名,当你打开文档时,这个表单被用来显示信息。文档是数据的一部分,表单是数据库设计的一部分。这和一
个数据库中的记录(称为数据)与表(称为基础组织)二者之间的关系相类似。在HTML表单和Notes表单中,另一个不同的
地方是访问的模式。在默认情况下,当你打开一个Notes文档时,它处于只读模式;读者所看到的都是在一个字处理器中创建的文档,
不包含任何文本域或下拉列表。如果你将此文档改成编辑模式,则它有着明显的不同:可编辑文本域,下拉列表,以及其他元素都变得可见了,好像
是在一个HTML的表单之中。然而,你所见到的并非是一个表单,确切地说,你所看到的文档,是通过一个表单显示出来的。表单与WE
B当你想通过Web来创建一个新文档时,你通过打开表单OpenFormURL命令打开一个适当的表单。例如,下面的URL在e
xample数据库中打开了personInfo的表单。http://server/example.nsf/personI
nfo?OpenFormDomino将Notes表单转化成一个HTML表单以响应你的请求。当然,Notes客户端应用还可以使用表
单的没有HTML等价的另外一些特征,这些特征并不能在Domino的Web应用中工作。你可以通过提交表单来保存新文档。提交表单时会
触发表单事件(通过一个CreateDocumentURL对象)。继而,Domino使用在CreateDecumentURL中指定的
表单将信息从HTML表单传输过来并保存在数据中。表单中的设计元素域(域的数据类型,类型,隐藏公式)在表单和表单对象中使用HT
ML属性计算文本使用热点在表单内使用HTMLWebQueryOpen和WebQuerySave$$Return域
(表单中的特殊域)在表单中使用CGI变量表单和搜索表单中的域域用来输入、修改和显示存储在条目中的数据。各种域类型区
别介绍域类型何时变化计算型当文档创建,存盘,刷新时计算,并保存在文档中显示时计算当文档
打开编辑,读或刷新时计算,不保存在文档中创建时计算当文档被创建时,仅此计算一次,并保存在文档中。WEB表单中的特殊域$
$HTMLHead包含在和标记之间的文本。在R4.6以后版本中可用HTML的Head属性$$Navi
gatorBody在表单中嵌入的导航器名,在R4.6以后版本中可用“嵌入导航器”$Readers使得文档仅仅只能在该域中或者
其他类型的“读者”域中指定的用户阅读。可以包括用户名,群组和角色(将角色名包括在方括号内),例如:“JoeSmith”:“Mark
eting”:“[Reviewer]”$$Return表单被递交时响应浏览者的文本;例如:“

Thankyou


”;你也可以根据表单的递交情况通过返回一个包含在方括号内的URL传递给浏览者一个URL资源,例如:[http://www:erol
s.com/kelleher]SaveOptions决定一个文档是否使用该表单保存的值:取默认值0时不保存。当递交按钮被设计成
激活某些操作而不是创建文档时,这一点非常有用。例如,搜索或激活一个代理SendTo文档被邮寄时邮件接收人列表。相关的域包括Co
pyTo,BlindCopyTo和$$ViewBody表单中想要嵌入的视图名,在R4.6以后版本中可用“嵌入视图”功能$$V
iewList在数据库中显示视图列表,在R4.6以后版本中可用嵌入文件夹功能在表单中使用CGI变量CGI变量表1Auth_T
ype如果服务器支持用户验证而且Script被保护,这是用于校验用户的特定协议的验证方法。Content_Length内
容的长度,与客户机给出的相同。Content_Type对于带有附加信息的查询,比如HTTPPOST和PUT,这是数据的
内容类型。Gateway_Interface服务器所遵守的CGI规范版本。HTTP_Accept客户机接受的MIME
类型,通过HTTP标题指定。HTTP_Accept_language客户机接受的语言,通过HTTP标题指定。HTT
P_Referer用户经常访问的页面的URL地址。HTTPS指示服务器是否启用SSL模式。HTTPS_CLIENT
_CERT_COMMON_NAMEx.509验证字上的公共名称HTTPS_CLIENT_CERT_ISSUER_COMMON
_NAMEx.509验证字的发行者HTTPS_KEYSIZESSL会话过程中的会话密钥。例如:40-bit、128-bi
t。Path_Translated服务器提供PATH_INFO的翻译版本,它获得路径并能对其进行从虚拟地址到物理地址的任何
映射。Query_String?后的信息,或在某些情况下是引用此Script的URL中位于!后的信息。CGI
变量表2Query_String_Decoded返回值与Query_String相同,但是将字符串解码。例如:如果URL
引用了一个包含不允许出现在URL中的字符的视图名称,此名称会被编码。此CGI变量将字符串解码。Path_Info_Dec
oded仅对于Domino应用程序可用。Remote_Addr发出请求的远程主机的IP地址。Remote_Host
发出请求的主机名称。Remote_Ident此变量会设置为从服务器提取的远程用户名。仅登录时使用此变量。Remote_Us
er返回被验证用户名的验证方法。Request_Content仅由代理支持。包含使用HTTPPOST请求发送的数据。此
数据经常是“URL编码的”,由用“&”连接的name=value对组成。例如:FirstName=John&LastNam
e=DoeRequest_Method用于发出请求的方法。对于HTTP,是“GET”、“HEAD”、“POST”等等。S
cript_Name到被执行的Script的虚拟路径,用于自引用的URL。Server_Name服务器的宿主名称、DN
S别名或IP地址,将出现在自引用的URL中。Server_Protocol与请求同时出现的信息协议的名称和修订。S
erver_Port发送请求的端口。Server_Software运行CGI程序的信息服务器软件的名称和版本。Serv
er_URL_Gateway_Interface服务器遵守的CGI规范的版本。表单和搜索Domino提供了一个默认的搜
索表单,然而,你可能为了某种风格的统一或者提供额外的功能而自己定制这种表单。当你选择一个连接到视图的搜索链接的时候,Domin
o在当前数据库中寻找一个名为$$Search的表单。如果存在,Domino显示这个表单,否则,它显示默认的视图搜索表单。创建
特殊用途的模板表单$$ViewTemplate你可以让Domino总是使用一个表单来显示一个特殊的视图。为此,给此视图命名为:
$$ViewTemplateforviewname在此,viewname是视图的名字或别名。例如,一个用
来显示AllbyData视图的表单可以命名为$$ViewTemplateforAllbyDate。
当你创建这种包含有$$ViewTemplate的类型的表单时,你必须在表单中嵌入视图本身(或者,你也可以包含一个名为$
$ViewBody的域来替换嵌入的视图)。$$ViewTemplateDefault假设你的Domino
数据库包含20个不同的视图,而你想让他们具有一致的风格,你可以创建一个$$ViewTemplate表单,并做19份拷贝,每一个对应
一个视图,但这会非常费时。相反,你可以创建一个简单的表单,用来显示数据库内的任何视图,仅仅只须给表单命名为$$ViewTempla
teDefault.当你创建这种$$ViewTemplate表单时,嵌入一个视图元素(或$$ViewBody域),而不必指定一个
特殊的视图。$$ViewTemplateDefault假设你的Domino数据库包含20个不同的视图,而你想让他们具有
一致的风格,你可以创建一个$$ViewTemplate表单,并做19份拷贝,每一个对应一个视图,但这会非常费时。相反,你可以创建一
个简单的表单,用来显示数据库内的任何视图,仅仅只须给表单命名为$$ViewTemplateDefault.当你创建这种$$Vie
wTemplate表单时,嵌入一个视图元素(或$$ViewBody域),而不必指定一个特殊的视图。$$NavigatorTe
mplate你可以让Domino总是使用一个表单来显示一个特殊的导航器。为此,给表单命名为:$$NavigatorTemplat
efornavname在此,navname是导航器的名称。例如,用来显示MainMenu导航器的表单可以命名为$$ViewTem
plateforMainMenu.当你创建这种$$NavigatorTemplate表单时,必须在表单中嵌入导航器本身(或者,也
可以创建一个名为$$NavigatorBody的域来替代嵌入的导航器)。$$NavigatorTemplateDefault你
可以创建一个简单的表单,用来在数据库中显示任何导航器,只需给表单命名为$$NavigatorTemplateDefault。当你创
建这类$$NavigatorTemplate表单时,嵌入一个导航器元素(或$$NavigatorBody域)。而不必指定一个特殊的
导航器。视图代理三.管理配置篇数据库属性配置ACL配置服务器配置服务器端命令三.管理配置篇Domino用户维护D
omino管理员界面及Domino目录简介注册与配置Notes用户配置非Notes客户端用户更新用户群组和用户口令恢复D
omino系统维护监控及维护服务器监控及维护数据库多组织多域管理多组织多域的邮件路由监控及维护日历及日历安排监控及维护
Web服务器监控及维护群集复制更新服务器、数据库及Web服务器代理服务器配置就像表单是Notes输入数
据的主要组成部分一样,视图是Notes查看信息的主要组成部分。在一个Notes视图中,每行代表一个文档,一列代表文
档中的一个域或由文档提供的信息计算的值。一列也可以就是与文档无关而只是为视图的某种目的服务的一个静态文本或一个固定数字。
以用户的观点,视图的主要功能是为每个文档显示足够多的信息以便用户识别它,并且允许用户在视图中打开文档,有时你还可以看到文档
组的摘要信息,比如总计或平均值。结下来用实例讲解domino代理时自包含程序,可以执行一个或多个数据库上的任务
。代理具有很大的灵活性!一.Domino概述DominoNotesBrowserDesignerAdminis
tratorWorkflowHTTP、SMTP、LDAP、DIIOP…….二.开发应用篇设计书签设计窗格设计
列表菜单栏工作窗格窗口附签工具栏1.从数据库开始http://serverName//datebaseN
ae?opendatebaseDomino的数据库是存放应用程序中的数据、逻辑和设计元素的容器。设计元素是用来创建
应用程序的构架单元。设计元素包括页面、表单、大纲、导航器、视图、文件夹、帧结构集、共享资源、代理等。Domino的
数据库的后缀名为.nsf,模板库为:.ntf创建数据库有三种方法:1。使用模板2。复制现有数据库3。从头开
始创建数据库数据库属性在浏览器中打开时创建索引数据库ACL1.2Domino与传统数据库的区别D
omino的数据库是一个集数据与设计元素于一身的集合体。数据存储在文档中。文档的界面是表单,一个设计元素。你可以把文档与表单非常粗
略地类比为数据库的行与表。但这种比喻并不恰当,比如我们可以在文档中添加一个在过去创建的表单中并不存在的域,而且,你可以使用不同的表
单去显示同一个给定的文档。在Domino中文档可以通过视图来显示。一个视图是满足某种规则(比如Priort
y="High")的文档的集合,视图的每一行既可能代表一个文档又可能代表一个分类,不同的列显示文档内容的不同信息
。列中既可能显示某一个域的值也可能显示某个公式的结果,比如PriceQuantity。打开一个视图与执
行一条SQL语句相似,只不过在视图中双击某一行可以打开相关文档。文档总是存在于编辑模式或只读模式下。在编辑模式
下,文档的可编辑域就像表单中的域。在只读模式下,这些域的内容以静态文本的形式出现表单和视图是Domin
o数据库开发的最重要的设计元素。但Domino数据库开发不仅仅使用这两个元素,其他元素包括(如下图):
http://serverName/databaseName/framesetName?openframeset
帧结构的概念是从Notes4.5开始提出的,但是DominoR5使创建帧结构变得更容易。DominoR5提供了一种新的方式
使我们可以用可视化工具创建帧结构。ameset>http://serverName/datebaseName/pageName?openpage
页面是一种区别于表单与文档之外的新的设计元素,是在DominoR5中新增的设计组件。在页面中用户既不必填写数据,也
不能得到数据。http://serverName/datebaseName/pageName?openform
表单是Notes应用的基础,它们决定了数据在输入输出过程中的显示方式;在一定程度上,也决定了在数据库中信息是如何存
储的。如果没有设计漂亮的表单,就不会有精美的Domino应用。http://serverName/datebas
eName/pageName?openview就像表单是Notes输入数据的主要组成部分一样,视图是Notes查看信息的主要组成部分。在一个Notes视图中,每行代表一个文档,一列代表文档中的一个域或由文档提供的信息计算的值。一列也可以就是与文档无关而只是为视图的某种目的服务的一个静态文本或一个固定数字。http://serverName/datebaseName/pageName?openview相比于视图而言文件夹可以给予用户更多的灵活性,因为文件夹中包含的文档不像视图那样规定严格。另一方面,一个文件夹与视图行为表现基本相同。用户可以从文件夹中拖出或拖进文档而不作任何改变,他们可以从文件夹中移出文档,而不真正地从数据库中删除文档。注意文件夹的灵活性同时也是它的缺点,用户可以把一个并非为设计中应该显示的特殊文档拖进文件夹中。下面在开发工具中讲解为了在域中捕获CGI变量,创建一个以CGI变量命名的文本域(例如,REMOTE_ADDR)。一般地,在编辑状态下将该域设置为隐藏,这样用户就不能改变域中的值。当用户打开表单的时候,REMOTE_ADDR环境变量的实际值变成了域中的默认值。下表显示了捕获CGI变量的表单。
献花(0)
+1
(本文系Lotus开发首藏)