开发基于Domino/Notes的动态Web网站
用户的需求
笔者最近开发某公司MIS系统时,用户提出了以下的一些需求:利用用户的局域网实现对数据库及文档信息的访问。数据由用户的一套基于VFP的业务系统提供,希望实现通过局域网供各部门及领导及时查询,同时实现文档信息的动态发布。
方案的分析
1.采用Browser/Web Server(B/S)模式
随着Web技术的迅速发展,B/S模式已经被广泛地采用。与传统的Client/Server(C/S)相比,B/S模式有许多优点:
* 不需要开发Client端软件。在Client端只需要有标准的浏览器就可以;由于对数据库查询、浏览的功能都在Web Server端进行,因此系统管理和维护工作大大减少。
* 用户操作实现了标准化。由于Client端是标准的浏览器,因此操作变得非常简单。
2.通过ODBC访问后台VFP数据库
由于用户需要动态地将信息发布到网上,而传统的静态的Web页面无法实现这些交互功能,因此我们必须将数据库与Web连接起来,并根据用户的需要,动态地产生用户需要的数据,以供用户查询、浏览。在数据库方面,为了与用户原有系统实现快速无缝连接,我们仍然选用VFP进行数据库管理。要实现动态页面,就必须实现对Server端的VFP数据库进行动态访问,因此,必须在Server端配置ODBC驱动程序。
查询结果图表一
3.对文档信息的访问,选用业界流行的Lotus Domino/Notes的解决方案
由于MIS系统对复合文档数据的处理要求,必须以文档数据库为核心建立,同时选择性地结合关系数据库。Lotus Domino/Notes是电子邮件、文档数据库、快速应用开发技术以及Web技术为一体的电子邮件与群件平台。目前,国内许多政府机关和企事业单位都采用Lotus Domino/Notes作为MIS系统的基础平台。
与其他Web服务器相比,Lotus Domino的优势在于:
数据库管理:用户可以用数据库形式管理Web站点页面及内容,而不仅仅是存储。Domino数据库自动维护信息之间的链接关系,使站点维护更简单。因此,在日常工作中,大量文档信息的Web发布工作完全可以交给业务人员完成,而无需由技术人员通过HTML编程的方式来进行文档信息的维护。
安全性控制:任何对Web信息的访问都受到安全性的控制,确保合适的人访问合适的信息。
查询结果图表二
4.Web Server选用Windows NT的IIS。
技术的实现
方案确定以后,主要需解决三个问题:必须让IIS能够处理对Notes数据库的访问;在Notes表单中运行的代理程序必须能够访问ODBC数据库; 调整IIS和Domino之间的安全性冲突。下面详细介绍在系统安装配置过程中如何解决上面三个问题,限于篇幅,开发过程只作简单介绍。
安装步骤:
步骤一:安装Windows NT Server 4.0和IIS4.0。
步骤二:在NT上配置ODBC,设置数据源(DSN)。运行NT控制面板的“ODBC数据源”,在“系统DSN”窗口下单击“添加”按纽,选择“Micosoft Visual Foxpro Driver”,在“Data Source Name”中输入数据源名,如:oil,在“Path”中指定ODBC数据源的路径,如:d:oil_dataoil.dbc。
步骤三:安装ChartFX。为了在客户浏览器端生成动态数据图,需要在Server端安装ChartFX ActivX控件。在NT上运行CfxIESrv.exe,选择默认安装方式,参数设置成默认值;再运行ChartFX的升级程序——CfxIEUpdSrv(2).exe;修改NT目录下的CfxSrv.ini文件,改为以下设置:
Relative=/cfxtemp
Absolute=d:oilcfxtemp (假定oil目录在D分区)
步骤四:建立IIS管理的站点。建立D:oil目录,HTML页面文件均放在该目录下;运行IIS的Internet服务管理器,选定默认Web站点属性中的IP地址,确保其绑定在80端口上,并将主目录的本地路径设为d:oil目录;在默认Web站点属性里的“主目录”属性中,将“FrongPage Web”选项选中;将Scripts虚目录定为oilscripts目录,并将许可选项定为“执行”;在资源管理器中,分别选中oil下的cfxtemp和Scripts目录,单击右键选择属性,在安全性中,选择“权限”按钮,将“Everyone”的权限设为“完全控制”,并将“替换子目录的权限”选中,选择“确定”按钮。
步骤五:安装Domino Server,配置Domino for IIS。将Domino设置成for IIS,这样对Notes库的访问全由IIS负责,Domino可以不用启动。
在确认IIS和Domino正常工作后,需要设置Domino ISAPI扩展,以便当IIS收到浏览器发来的Domino应用程序请求时可以使用该程序;启动Internet服务管理器,右键点击默认Web站点,选择属性,在主目录选项页中,单击“配置”→“添加”,在可执行文件域中输入ISAPI扩展文件(niisextn.dll)的完整路径名;在扩展名域中,输入“.NSF”,在不包括的方法域中输入下列不被Domino for IIS支持的HTTP成员函数:PUT、DELETE;选中脚本引擎,取消选择检查文件是否存在选项。
设置IIS扩展过滤器,以便将用户证书正确地传递给Domino;启动Internet服务管理器,右键点击默认Web站点,选择属性,选择ISAPI筛选器并单击添加;在筛选器名域中输入用来描述IIS过滤器的文字,如:Domino;在可执行文件域中输入过滤器文件(niisfilt.dll)的完整路径名。
步骤六:调整IIS的安全性与Domino的冲突。在默认Web站点属性的“目录安全性”中,单击“匿名访问和验证控件”,再单击“编辑”,在“验证方法”中取消选择“Windows NT挑战/反应”选项。
开发简介:
1. 用FrontPage、DreamWeaver等网页制作工具制作HTML页面文件,存放在d:oil目录下,并通过超级链接访问Notes数据库中相应的视图或表单;
2. 用于Web动态查询的VFP数据库存放在d:oil_data目录下,并进行相应的ODBC配置,如上所述;
3.Notes数据库存放在d:lotusdominodataoil_info目录下,用Lotus Domino Designer开发相应的表单和视图,对ODBC数据库的操作通过在表单中执行代理程序来进行,对文档数据库的操作可以通过视图和表单来完成。由于Notes数据库的安全机制非常完善,可以对文档数据库、表单甚至域级进行权限控制,因此,可以很方便地在Web上实现特定的用户访问特定的内容。
开发实例
笔者用以上的方法为某石油公司开发了一套信息发布及业务查询系统。文档的Web发布包括工作动态、发文公告、通讯录等。该系统完全实现了由业务人员从任一台联网的计算机上对文档信息进行管理,包括新增、删除、修改、查看、全文搜索等操作并及时发布;业务数据查询通过在Notes表单中的代理程序访问ODBC数据库(VFP数据库及表),本文的两张附图所显示的就是通过Web方式查询到的VFP数据库的信息。
备注:此设计在基于HP NetServer硬件平台上开发并运行,顺利实现了设计目标,取得理想结果。
分享到:
相关推荐
- 在数据库中创建XPage,这是基于Domino/Notes Xpage技术的页面,可以包含各种组件和控件。 - 创建一个自定义控件(Custom Control),可以将常用的组件组合起来形成可重用的模板。 2. 页面组件的添加和配置 - ...
【Lotus Domino/Notes R8/R85 基础】是IBM Software Group推出的一款集成了邮件服务、协作工具和应用程序开发平台的产品。这个版本带来了许多改进和新特性,旨在提高用户的工作效率和安全性。 首先,Domino作为整体...
Java和JavaScript在Lotus Domino/Notes5.0开发中的应用 Java和JavaScript是两种不同的编程语言,Java是一种静态类型的、面向对象的编程语言,而JavaScript是动态类型的、基于原型的脚本语言。它们在Lotus Domino/...
Domino Xpages 101 是针对 IBM Domino 8.5 平台的一项重要更新,它为开发人员提供了一种全新的方式来构建和维护基于 Web 的应用程序。XPages 结合了 JavaServer Faces (JSF) 和 Domino 的强大功能,允许开发者创建...
在IT行业中,Lotus Domino作为一款强大的企业级应用平台,广泛应用于构建基于浏览器(Browser/Server,B/S)架构的应用系统。其中,BBS(Bulletin Board System,公告板系统)数据库是Domino平台上的一个重要应用...
Domino 技术文档,chm格式电子阅读版,介绍一些基础知识,开发经验总结、lotus notes常用代码、给Notes数据库实现注册码功能、Notes与Office的接口、开发基于Domino/Notes的动态Web网站、PowerBuilder访问Lotus ...
本文档的标题“运用Lotus Notes/Domino R5开发基于Web的公文处理系统”表明了文档的主题是关于如何利用Lotus Notes/Domino R5这一技术平台来开发一个能够处理公文流程的Web应用系统。 首先,Lotus Notes是IBM推出的...
在开发基于Domino的动态Web网站时,开发者需要掌握以下几个关键知识点: 1. **Lotus Domino Designer**:这是IBM提供的集成开发环境(IDE),用于创建和管理Domino应用。它包括了代码编辑器、数据库设计工具和测试...
资源名称:Domino web开发与管理 中文PPT版内容简介:Domino web开发与管理 中文PPT版主要讲述的是Domino web开发与管理;Notes/Domino系统基于客户机/服务器(C/S)技术。早期的客户机与服务器软件都被命名为Notes,...
Domino开发主要指的是利用Lotus Domino Designer工具来构建和管理基于 Domino服务器的应用程序,这些应用程序可以支持电子邮件、日历、任务管理、文档共享、工作流等多种功能。 在描述中提到的"这本书"可能是关于...
Lotus Domino/Notes是由IBM开发的一款协同应用平台,以其电子邮件和文档管理功能著称。Domino服务器提供了强大的数据库和应用服务器功能,而Notes客户端则提供了一个用户友好的界面。Domino/Notes强调数据的安全性和...
这个平台提供了基于Notes/Domino的开发环境,可以构建富客户端和Web应用程序。快速开发主要是指利用Domino Designer工具,该工具集成了开发、测试和调试功能,使得开发者能够高效地创建和部署应用程序。 “简单的...
Lotus Notes/Domino基于客户端-服务器架构,主要由三部分组成:Notes客户端、Domino服务器和Notes数据库。客户端负责用户交互,服务器处理数据存储和通信,而数据库则包含各种文档和表单,是信息存储的核心。 二、...
Domino是一个基于Notes的Web开发工具,使用Domino可以节省成本,且大部分Notes开发者可以轻松地过渡到Domino Web开发工作中来。Domino还提供了一种特殊的功能,使某些类型的程序开发变得轻松愉快。 2. Domino的特点...
Lotus Domino Designer是IBM推出的一款强大的集成开发环境(IDE),主要用于构建、设计和管理基于Lotus Domino/Notes平台的应用程序。 在本书中,读者将了解到如何利用Lotus Domino Designer的特性来创建复杂的业务...
Lotus Notes是一款强大的企业级协同软件,其内置的开发环境——Lotus Domino Designer,支持创建各种类型的应用,包括Web应用程序。在"Lotus Notes Web (论坛)开发实例"中,我们将探讨如何利用Lotus Notes的强大功能...
Domino以其强大的邮件、日历、文档管理和工作流功能而闻名,它基于Notes/Domino架构,允许开发者构建富客户端和Web应用程序。 【描述】中的"IBM官方文件"暗示了资料可能是IBM提供的官方教程或指南,虽然以英文呈现...