LotusDomino 8.5.1创建Java 代理
lotus domino新建流程模块

一配置应用程序1.新建一个应用程序如图所示点击确定,新建一个应用程序。
2.右键点击新建立模块,选择应用程序—>访问控制,如图添加角色,分别是admin allReader thCalAdmin thNormal; 添加完后,如下图所示:在基本选项里面默认是下列内容,我们需要添加一些其他的内容,并设置其权限。
对于Default,配置如下图所示;,其他的设置可以参照,应用模板库进行设置;3..我们可以参照模板,比如有个姬晓东应用模板库,我们可以将一些需要的东西进行拷需要拷贝的内容:表单里的文件,只拷贝红色方框内的内容共享元素里面文件和域中全部元素代码中代理和Script库中的全部元素当然这些都是一一对应的。
4.此时我们可以打开,此时会弹出对话框,加载流程失败。
这是因为我们还没有对流程图进行绑定。
在流程配置中选择新增流程配置,进行设置如图所示,就这样应用程序配置完成。
二新增表单中的表格在子表单SFFormBasicInfo双击打开,如下图所示:,如上图所示增加一个,报销金额和出差地点。
在页面显示如下图所示三建立视图并应用1.新建视图,更改视图名称2.双击字段,填写字段名称。
,在对应字段的下面设置申请日期的公式,如图并且公式需要对应SFFormBasicInfo里字段对应的英文名称。
同理,对剩下的字段进行相同操作,分别是申请人-PsnCn 报销金额-StPrice 出差地点-StPlace;最后对整个视图处理,填写逻辑公式如图所示在表单MenusListForm中进行配置,如图注意,红色字体部分是需要与视图英文名称对应。
依次拷贝草稿,改名为正在处理|doingview , 完成|finish. 并在SFFormBasicInfo文件中进行配置。
配置完成后打开MenusListForm表单,如图所示四验证打开MenusListForm,填写申请单,如图所示点击保存。
结果如下:草稿中有我们新建的申请表:双击草稿中的申请表:在申请表中下一步,会提示“提交成功“;返回视图,在草稿中没有申请表,但在处理中有这个申请表,如下图所示:点击这个申请表,继续下一步直到出现提醒返回视图查看已完成视图有这个申请表至此,新建应用,和建立视图,配置视图并应用验证流程完成。
Lotus Domino及Notes的安装及初始化

Domino及Notes的安装和初始化北京美络科技有限公司二○一二年二月目录1Lotus Domino Server 安装 (4)1.1 运行安装程序 (4)1.2 进入欢迎页面 (4)1.3 软件许可协议 (5)1.4 设置程序安装目录 (5)1.5 设置数据安装目录 (6)1.6 选择服务器类型 (6)1.7 确认安装 (7)1.8 复制文件 (7)1.9 安装完成 (8)1.10 Domino服务器补丁的安装 (15)2语言包安装 (8)2.1 运行中文语言包安装程序 (8)2.2 软件安装许可协议 (9)2.3 确认Domino程序安装目录 (10)2.4 询问原版安装 (10)2.5确认安装版本和路径 (11)2.6 选择语言包的安装类型 (12)2.7 检测版本信息 (12)2.8选择语言包 (13)2.9 确认操作 (13)2.10 复制文件 (14)2.11 安装完成 (15)3初始化Domino服务器 (16)3.1 启动Domino (16)3.2 选择服务器类型 (17)3.3 设置服务器名称和标题 (18)3.4 设置组织机构名称 (18)3.5 设置网络域名称 (19)3.6 设置管理员名字和密码 (19)3.7 指定Domino服务器的internet服务 (20)3.8 Domino网络设置 (20)3.9 自定义网络设置 (21)3.10 Domino服务器安全设置: (21)3.11 最后确认选项 (22)3.12 域名解析 (23)3.13 测试服务器运行 (24)4Lotus Notes客户端程序安装 (26)4.1 运行安装程序 (26)4.2 许可证协议 (27)4.3 用户信息 (27)4.4 指定安装路径 (28)4.5 自定义安装 (28)4.6 确认安装 (29)5Notes 客户端的配置 (30)6场所的配制 (35)7names库的配置 (35)8服务器的配制 (37)8.1 许可证协议Lotus Administrator (37)8.2 打开服务器 (38)8.2 修改服务器配置文档 (38)8.3 修改安全性选项卡(改右侧五项) (39)8.4 端口选项卡(两项) (39)8.5 Internet协议选项卡(2+6项) (39)8.6 重启服务器 (41)9notes.ini文件的设置 (41)安装手册美络协同工作平台是北京美络科技有限公司在全国最早推出的B/S结构的办公自动化系统之一。
domino服务器客户端设置

Domino的服务器配置Lotus Domino服务器和Lotus Notes终端安装好了之后,我们再来介绍它们的配置,首先介绍Domino服务器的配置,Notes终端配置留待下期继续介绍:1.第一次从开始菜单的程序项启动Lotus Domino,系统即进入Lotus Domino的配置窗口。
我们来看看Lotus Domino配置窗口(如图1所示),配置窗口顶端有阿拉伯数字标示的“1、2、3、4”四个步骤,其右有“<、>”(向前向后)两个步骤控制按钮,接着有“保存并退出”按钮,可以随时保存设置结果,下一次启动Lotus Domino时将自动从该步骤开始。
配置窗口主体区一般有步骤标题和步骤详细内容两项,其右是该步骤的详细帮助信息。
2.第一步,创建新的Domino服务器这一步要求选择是否创建组织中的第一台Domino服务器,如果在组织中添加服务器,则选择“附加的Domino服务器”,否则选择默认的“第一台Domino服务器”。
3.第二步,选择设置方法Lotus Domino服务器系统提供“快捷配置”和“高级配置”两种配置方式。
一般用户只需选择“快捷配置”方式,然后按照向导一步步的设置即可。
这里我们选择“高级配置”方式,详细介绍一下Lotus Domino配置的各项内容。
高级配置有两大部分,一部分是“服务器用户”配置,主要设置Lotus Domino所提供的服务;另一部分是“管理设置”,主要设置Lotus Domino 服务器管理方面内容。
以下分别予以详细介绍。
4.第三步,服务器用户设置这项设置包括:(1) 标准服务。
这是缺省项,即系统一定需要设置的,不能取消,它又包括:管理进程、索引器、复制器、代理管理器等。
(2) 附加服务。
包括日历连接器、事件管理器、日程安排管理器、统计信息等,建议全部选择。
(3) Web浏览器。
包括HTTP、IIOP等服务。
如果你希望Domino服务器作WebServer,必须选择HTTP,这时将出现更多的选项(Web邮件服务:提供基于Internet的邮件处理服务;Web应用程序:提供HTML语言的支持,如:java,CGI等;Web邮件程序和应用程序;高级定制等),建议选择Web邮件程序和应用程序。
Java程序调用Domino 对象

在Java程序中调用Domino我们在Java程序中,可以通过引用lotus.domino package,来调用Domino对象。
我们的程序可以是一个应用程序,一个Domino代理,一个applet,或一个servlet。
如果我们要在一个客户端调用,那我们需要在机器上配置:Server端:保证notes.ini 包含如下的列:ServerTasks=<any other tasks>,http,diiop在Domino目录(在Server\Servers)下的服务器文档必须允许并限定远程调用,做如下配置:⏹Under Security:◆Under Server Access, fill in "Access server," "Not access server,""Create new databases," and "Create replica databases" as desired.◆Under IIOP Restrictions, fill in "Run restricted Java/Javascript/COM"and "Run unrestricted Java/Javascript/COM" as desired.◆Under Web Server Access - Web server authentication, specify a moreinclusive or less inclusive view for validating user names.⏹Under Ports:◆Under Internet Ports - IIOP, set up the TCP/IP port for non-encryptedtransfers and the SSL port for encrypted transfers. Indicate whetheraccess is permitted by name and password, and whether anonymous accessis allowed.⏹Under Internet Protocols:◆Under HTTP - Basics, indicate whether HTTP clients can browse databases.A "no" specification disallows DbDirectory.getFirstDatabase for thedatabase.◆Under IIOP, specify the number of threads to be allocated for handlingremote calls.Designer端:●保证notes.ini 包含如下的列:ALLOW_NOTES_PACKAGE_APPLETS=1●将Notes目录下的和 Notes.jar 加入CLASSPATH 环境变量中,如:setCLASSPATH=.;C:\Lotus\Notes\Data\domino\java\NCSO.jar; c:\Lotus\Notes●将 c:\Lotus\Notes 加入PATH环境变量中。
在Lotus Notes中设置邮件定时发送的方法

在Lotus Notes中设置邮件定时发送的方法在 Lotus Notes 中并没有直接提供定时发信这样的功能,但是在许多公司日常工作中,这项功能却会常常被用到。
那么,Lotus Notes 中该如何满足定时发信这种需求呢?其实,Lotus Notes 提供了一种更为灵活的解决方式,这种方式不仅仅能够解决定时发信的问题,而且对于很多其它更为复杂的问题都能够提供很好的解决方案,这就是我们要介绍——代理功能。
用代理设置定时发信仅以 Lotus Notes8.5 中设置定时自动发信功能为例,设置方法如下:1.在 Notes 收件箱界面,点击创建 > 代理,进入代理设置界面。
2.代理设置界面主要分为左右两个部分,左侧主要是记录所设置的代理用到的资源、结构等,设置不同类型的代理,其左侧视图也不尽相同;右侧视图用于代理功能的实现,操作对象的设置、操作的定义、代理运行的代码都在这里设置,界面如图 1 所示。
代理创建界面图1.1. 代理创建界面3.下面我们来设置代理的属性,在右侧视图单击鼠标右键,选择代理属性,出现代理属性对话框,如图 2 所示。
若不出现则重复一次此操作即可。
在名称栏输入代理名称,比如 “EmailSender”,选中私有选项,在此选项中,共享选项指此代理由一个用户创建且其它用户可以运行,私有代理则是指只能由代理的创建人运行的代理。
对于运行时间选项,我们选择“按日程安排”。
定义定时发信的时间,在这里我们选择每天一次,点击“日程安排”,出现代理日程安排对话框。
选择定时发信的时间(即开始运行刺代理的日期选项中对应的时间),如:10:00。
勾选限制代理运行日期中的三个选项,设置运行代理的开始日期为今天,停止运行代理的日期为明天,单击确定按钮。
将代理属性选项卡中的目标选项选为“所有创建及修改过的文档”。
点击代理属性窗口右上角的“X”,关掉代理属性窗口。
代理属性设置完毕。
代理属性界面2. 代理属性界面图2.4.接下来我们可以看到在右侧视图的左上角有个下拉框,如图 3 所示。
JAVA操作Domino

JAVA操作Domino2007-03-29 14:42package com.fdt.domino;import lotus.domino.Database;import lotus.domino.Document;import lotus.domino.NotesException;import lotus.domino.NotesFactory;import lotus.domino.Session;import lotus.domino.View;public class Domino{private Session conn = null;private Database db = null;private View view = null;private String host = "10.60.1.6:63148";private String username = "F1065024";private String password = "F1065024";public Domino(){getDataSource();}private void getDataSource(){try{conn = NotesFactory.createSession(host,username,password); }catch (Exception e){System.out.println("getDataSource" + e);}}public Session getConn(){return conn;}/*** 得到domino数据库的一个库*/public Database getDataBase(String db_name) {try{this.db = conn.getDatabase("", db_name);}catch (Exception e){System.out.println("getDataBase" + e); }return this.db;}/**** 得到domino的视图**/public View getView(String viewName){try{this.view = db.getView(viewName);}catch (Exception e){System.out.println("getView()"+e);}return this.view;}/*** 关闭Domino连接*/public void close(){try{if (conn != null){conn.recycle();conn = null;}}catch (Exception e){System.out.println("Domino close()"+e);}}public static void main(String[] args){Domino domino=new Domino();Session session = domino.getConn();try{Database db = session.getDatabase("", "2065012/caitest.nsf"); View view=db.getView("zhaomu");Document doc=view.getFirstDocument();while(doc!=null){System.out.println(doc.getItemValueString("username"));doc=view.getNextDocument(doc);}}catch (NotesException e){e.printStackTrace();}}}。
Lotus Domino 开发平台简介

Lotus Domino/Notes开发平台简介2.1 Lotus Domino/Notes简介Lotus Domino/Notes是业界唯一建立在开放、统一的结构之上,集企业级通讯、协作、工作流、Intranet和Internet Web应用功能于一体的软件平台[12]。
Lotus Domino/Notes因其先进的文档数据库和功能强大的电子邮件系统、工作流开发、标准的Web应用服务等优势而得以在办公自动化、协同工作环境、企业信息集成和知识管理中广泛应用。
Notes是在传统的关系数据库和电子邮件系统基础上发展而来,但与这二者又有很大的差别,它开创了群件技术,并已成为群件的事实标准。
我们可以如下概括Domino/Notes适用的应用范围:对于办公自动化应用,我们可以说Lotus Domino/Notes是一个以网络为基础,以知识管理为核心的办公自动化系统的实现和运行平台。
对于电子协作和网络应用开发,我们可以说Lotus Domino/Notes是典型的群件系统,提供信息共享和工作流自动化的实现和运行环境。
对于Intranet和Internet,我们可以说Lotus Domino/Notes是强大的Web 应用服务器,是构建管理和开发企业电子商务Web应用的平台。
2.2 Lotus Domino/Notes应用程序的结构[12][ 13] [ 14] [ 15]每一个Lotus应用程序都至少包含一个数据库(.nsf),而帧结构集、表单及域、视图、页面及文件夹等是Notes数据库的基本元素。
另外人们还可以用导航器、代理、操作、公式、LotusScript语言等工具使应用程序更加简洁、高效和易用,如图2-1所示。
下面对各部分进行简单介绍。
图2-1 Domino应用程序组成1.数据库数据库是一个集合概念,是包含应用程序的数据、程序代码、逻辑关系和设计元素的容器,一个数据库通常存储某一个特定类型的信息,扩展名为.nsf。
现有 IBM Lotus DominoNotes 邮件模板简介

服务器发布信息Notes 用户 Web 用户Domino8.x 服务器D omino8.5.X m ail85.ntf mail85.ntfDomino8.0.X m ail8.ntf mail8.ntf Domino7.x 服务器mail7.ntf dwa7.ntf对Mail85.ntf 的支持Notes 8.5.x 客户端Notes 8.x 客户端Notes 7.x 客户端Notes 6.x 客户端Domino8.5.x 服务器支持仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用Domino8.x 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用Domino7.x 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用Domino6.5.6 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用对Mail8.ntf 的支持Notes 8.5.x 客户端Notes 8.x 客户端Notes 7.x 客户端Notes 6.x 客户端Domino8.5.x 服务器支持支持仅支持在升级过程中的使用仅支持在升级过程中的使用Domino8.x 服务器支持支持仅支持在升级过程中的使用仅支持在升级过程中的使用Domino7.x 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用Domino6.5.6 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用仅支持在升级过程中的使用对Mail7.ntf 和dwa7.ntf 的支持Notes 8.5.x 客户端Notes 8.x 客户端Notes 7.x 客户端Notes 6.x 客户端Domino8.5.x 服务器支持支持支持* Domino8.x 服务器支持支持支持* Domino7.x 服务器支持支持支持*Domino6.5.6 服务器仅支持在升级过程中的使用仅支持在升级过程中的使用* *对Mail6.ntf 的支持Notes 8.5.x 客户端Notes 8.x 客户端Notes 7.x 客户端Notes 6.x 客户端Domino8.5.x 服务器支持支持支持支持Domino8.x 服务器支持支持支持支持Domino7.x 服务器支持支持支持支持Domino6.5.6 服务器支持支持支持支持注意:“仅支持在升级过程中的使用”表示该配置在服务器和客户端升级到新版本所需的时间之内是支持的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在开发LotusDomino数据库的过程之中,开发人员可以创建Java代理(Agent)程序,方便将 Lotus Notes Java API 和任何第三方的 Java 类库整合到 Domino 数据库中,使得Notes 数据库具有强大的可扩展性。
在 Domino Designer 8.5.1 中,集成了 Eclipse 开发环境,用于 Java 代理的开发。
本文将通过一个具体的应用案例,向 Lotus Domino 开发人员介绍如何使用 Domino Designer 8.5.1 开发依赖于第三方 Java 类库的 Java 代理程序,并阐述了如何部署基于事件触发和被调度的代理程序。
应用环境分析:
我们需要对一个现有的 Notes 数据库进行改造,这个 Notes 数据库中存在一系列的视图,某些视图中包含的文档包含统一格式的 Excel 附件。
我们需要批量地从这些 Notes 文档中提取出 Excel 附件,并将 Excel 文件中的数据保存到DB2数据库中。
客户存在两种不同的需求,一种是手动选择需要处理的 Notes 文档,另一种则是在每个月固定的时间点执行批处理程序,将符合特定条件的 Notes 文档批量进行处理。
对于这两种需求,我们都可以通过建立 Java 代理程序来实现。
使用 Domino Designer 8.5.1 创建 Java 代理
在 Domino Designer 8.5.1 中打开 Notes 数据库文件 TestNSF.nsf, 展开 Code 节点,在 Agents 节点上点击右键,在菜单中选择”New Agent”,在弹出的对话框中选择”Java”,命名为”DataExtractionAgent”。
如图 1 所示:
图 1. 创建 Java Agent
统会自动在默认包中创建 JavaAgent.java 文件,该类扩展了 lotus.domino.AgentBase 类,并重载了 NotesMain() 方法。
清单 1. Java 代理程序代码示例
public void NotesMain () {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
// (Your code goes here)
} catch(Exception e) {
e.printStackTrace();
}
}
使用 session 对象可以获取当前的代理程序所处的 Notes 数据库或者其他数据库对象,并调用 Notes Java API 实施数据库文档的增删改查,以及元数据的读取等操作。
agentContext对象是 Java 代理的运行环境对象,可用来获取被用户选择的 Notes 数据库文档列表等对象。
当 Java 代理被触发时,AgentBase 类的 NotesMain() 方法将被调用。
接下来,我们可以在 Java 代理中继续建立其它的 Java 包和类;如果我们需要在 Java 代
理程序中调用第三方的 Java API,我们可以将依赖的 Java 类库拷贝到 Notes 或 Domino 内置的 Jvm 的 lib/ext 目录下。
在 Domino Designer 中,切换到 Java 视图,发现 DataExtractionAgent 作为一个独立的 Java 项目存在,Domino Java Library 下可以看到新增加的 Java 类库,agent.jar 包含了从 Excel 文件中读取数据保存在 DB2 数据库中业务逻辑,而 db2 开头的两个 jar 包提供了操作 DB2 数据库的 API。
图 2. Java 代理程序在 Java 包视图中的显示
在 Java 视图中可以方便的完成 Java 代理程序的开发,之后可以回到 Domino Designer 视图,执行 Java 代理的测试。
选择 Code 节点下的 Agents 项,在右边的窗体中得到所有 Agent 程序的列表,右键点击 DataExtractionAgent,选择”Run”命令,则触发了该 Agent 程序的运行。
图 3. 测试 Java 代理程序
运行的结果是得到一个日志对话框提示 Agent 执行的情况。
图 4. Java 代理程序运行情况
代理被触发的方式主要分为两种,一种通过菜单调用,另一种则通过调度来实现。
通过菜单调用的 Java 代理可以部署在 Notes 客户端或者 Domino 服务器;而调度的 Java 代理只能运行在 Domino 服务器上。
调试 Java 代理程序
可以使用 Domino Designer 对新建的 Java 代理程序进行调试。
首先在 Domino Designer 视图中选择 Java Agent,然后在下方的 Properties 选项卡中选择 Security 页面,选择“Compile Java code with debugging information”。
图 5. 设置 Agent 程序的调试信息
然后打开 Tools 菜单,选择 Java 调试首选项,勾选”Client Agents/Applets”,设置端口号。
图 6. 设置 Java 代理调试参数
创建一个”Remote Java Application”调试配置,如图 7 所示。
选择 Host 为 localhost,
Port 为 8701.
图 7. 设置远程 Java 应用调试配置
在 JavaAgent 的 NotesMain() 方法中添加断点,然后通过工具栏启动调试。
图 8. 启动 Java 代理的调试
切换到 debug 视图,发现远程 debug 的连接已经被建立。
进入 Notes 客户端,触发Java 代理的运行,进入断点,于是可以进行调试了。
Java 代理的触发机制有两种,一种是事件触发,一种是定时触发。
在 Notes 视图中调用 Java agent
在 Java 代理的基本属性页,选择运行时触发方式为”On event”,在下方的下拉列表中选择”Agent list selection”。
图 9. 设置 Java 代理程序的触发
在 Notes 视图的 Action 列表中新建一个 Action,命名为”提取数据”,编辑该 Action 的属性,使之在工具菜单中显示,双击该 Action,设置 click 事件的业务逻辑,选择在客户端运行,调用的程序为 Notes Formula:
图 10. 编写对 Java 代理程序调用的公式
在 Domino 服务器中部署定时调用的 Java 代理程序
使用 Domino Designer 完成 Java 代理的开发并部署到服务器上的 Notes 数据库中,设置调用机制为定时调用。
进行保存时,弹出下面的对话框,指明当前的开发人员不具备足够的权限来部署服务器上的 Java 代理程序。
设置 Java 代理为定时执行的同时,还需要在 DominoServer端进行配置,打开 Domino Administrator,选择最右方的 Configuration 选项卡,选择右下方工作区中的 Security 页。
将管理员的 Notes ID 加入到域”Sign or run restricted LotusScript/Java agents”中。
如果Java 代理程序需要在服务器端的文件系统写文件,则需要在Full Access administrators 域中也加上管理员的 Notes ID. 完成修改后进行保存。
图 11. 配置 Java 代理程序在 Domino 服务器上运行的权限
总结:
本文介绍了如何在 Lotus Domino Designer 8.5.1 中开发 Java 代理程序,并在 Java 代理中调用第三方的类库,另外还介绍了调试 Java 代理的方法以及部署 Java 代理到Domino 服务器的要点,具有一定的参考价值。