遍历邮箱数据库的所有
Document
:
根据
DocumentCollection dc = dbMail.getAllDocuments();
我们获得了该数据库中存储的所有
Document
的集合,这就是所有的邮件。于是可以遍历了:
Code
|
if
(dbMail != null)
{
DocumentCollection dc = dbMail.getAllDocuments();
System.out.println("Mail database : " +
dbMail.getTitle() + " is " +
((int
)(dbMail.getSize()/1024)) + "KB long and has " +
dc.getCount() + " documents");
String fn = dbMail.getFileName();
String title = dbMail.getTitle();
System.out.println(fn.toUpperCase() + " - " + title);
Document doc = dc.getFirstDocument();
while
(doc != null) {
System.out.println(
doc.getItemValueString("Subject"));
System.out.println("~~~~~~~~~~~~~~~~~~~~\r\n");
System.out.println("From=" + doc.getItemValueString("From"));
System.out.println("~~~~~~~~~~~~~~~~~~~~\r\n");
System.out.println("Body=" + doc.getItemValueString("Body"));
System.out.println("~~~~~~~~~~~~~~~~~~~~\r\n");
String readFlag = doc.getItemValueString("Readed");
if
(readFlag == null || readFlag!= "1" )
{
doc.appendItemValue("Readed ",
"1");
if
(doc.save())
System.out.println("Document created and saved");
else
System.out.println("Something went wrong");
}
else
System.out.println("
发现已经打上了标记
!");
String docNoteID = doc.getNoteID();
System.out.println("NoteID = " + docNoteID);
String docNoteURL = doc.getNotesURL();
System.out.println("NoteURL = " + docNoteURL);
doc.recycle();
doc = dc.getNextDocument(); }
|
我们通过
String readFlag = doc.getItemValueString("Readed");
可以获得这个邮件的“
Readed
”字段
(
自定义字段
)
。如果这个字段不存在,说明我们是第一次浏览该封邮件。这样的话,我们通过
doc.appendItemValue("Readed ", "1");
以及
doc.save()
,给该封邮件增加这个已浏览标示字段。
另外,转《通过
JAVA-CORBA
访问
Domino
》中一段很有帮助的话:
如何从
lotus.domino.NotesException
中获取错误信息:
在你编写
domino
的
java/corba
应用程序时,不可避免的要同异常处理打交道,
NotesException
当然是每个开发人员都不愿见到的但又不得不经常面对的问题。
如果你在写程序时尽是简单的采用
try{
….
}catch(Exception e){
e.printStackTrace();
}
|
的形式捕捉异常,那么一旦代码抛出异常,你将变得一筹莫展,因为屏幕上不会打印出任何对你提供帮助的信息,这方面的资料更是凤毛翎角,
连
IBM
的官方文档中都没有丰富的错误信息提示。错误捕捉代码应该这样写:
try{
….
}catch(Exception e){
if(ex instanceof lotus.domino.NotesException){
System.out.println( "
通过
CORBA
访问数据库发生错误,错误代码为
"
+((lotus.domino.NotesException)ex).id);
}
e. printStackTrace();
}
|
这是屏幕上将打印出错误代码,有了错误代码,我们还要知道错误代码的含义,这就要到
IDL
文件中去查了。在
corba.dll
文件中
NotesError
这个接口定义了全部错误代码(自己要做一下简单的加法才能知道那里面错误代码的具体值),错误代码的变量名正是错误信息。这样你便可以对出现的问题了然于胸了
,
对你解决突发性事件很有帮助。
参考资料:
1
:《
Java
对
Domino Objects
的访问》,
by Robert Perron,Steve
2
:《用
Java
通过
DIIOP
远程操作
Domino
服务器》
3
:《通过
JAVA-CORBA
访问
Domino
》
4
:《
LotusNotes
和
Eclipse
管理和运行
Java
程序》
分享到:
相关推荐
Java远程访问Domino邮箱数据是通过使用Lotus Domino Java API(Lotus Domino JNA或Lotus Domino Access for Java)来实现的。这个过程涉及到多个步骤和技术,包括理解Lotus Domino的架构、设置Java环境以及使用特定...
java访问domino,通过http访问Domino,java快速访问Domino,java集成lotus domino 完全提供源码 界面请查阅 https://blog.csdn.net/weijia3624/article/details/113108704
在本场景中,我们将深入探讨如何使用Java Mail API来访问Lotus Domino邮箱系统。Lotus Domino是由IBM开发的企业级协作平台,其中包含了电子邮件、日历、任务等功能。 首先,为了与Lotus Domino服务器进行交互,你...
- 压缩包中的“Java-CORBA访问远程Domino服务器.doc”可能涵盖了使用Common Object Request Broker Architecture (CORBA)来访问远程Domino服务器的方法。CORBA提供了一种跨平台的分布式对象模型,允许不同系统间的...
Java 访问 Domino 对象可以使用 Domino API 读取 Domino 数。 Java 访问 Domino 对象需要了解 Domino 的基本结构和 Java 的编程语言特性。同时,Java 访问 Domino 对象需要经历预备步骤、JDK 及 IDE、API 及 访问...
访问 Domino 对象使用 Java 本文主要介绍了使用 Java ...使用 Java 访问 Domino 对象需要了解 lotus.domino 包的使用和 NotesFactory 类的方法,了解本地调用和远程调用的区别,并且使用 NotesThread 类来管理线程。
2. **打开数据库**:使用 Lotus Domino API 打开指定的邮箱数据库。例如,`NotesSession` 和 `NotesDatabase` 对象用于创建和管理与数据库的交互。 3. **查询邮件**:使用`NotesView`对象查询邮件视图,并获取邮件...
2. **Lotus Domino JDBC驱动安装**:在使用Java连接Domino之前,需要在服务器上安装并配置JDBC驱动。这个过程可能包括在 Domino 服务器的notes.ini文件中添加相关配置参数,以及确保驱动程序的JAR文件在系统的类路径...
总结,这个文档描述了如何使用Java在Domino环境中通过JDBC访问Oracle数据库,生成动态HTML内容,以及如何在代理和Servlet中处理参数。这些都是在企业级应用开发中常见的集成技术和数据处理方法。
在《Java 访问 Domino 服务器》文档中,我们将学习如何使用 Java 语言访问 Domino 服务器。Domino 服务器是一个功能强大的电子邮件服务器,它提供了许多有用的功能,如全文检索、安全性和开发时效等。通过 Java 语言...
Java对Domino的访问是IBM Lotus Domino开发中的一个重要主题,它允许开发者利用Java语言与Domino服务器进行交互,实现各种功能,如数据存取、邮件处理、应用逻辑控制等。在IBM官网上,这一主题被详细解读并分为上下...
在提供的压缩包文件中,"flash在domino中的使用"可能包含有关如何在Domino环境中使用Flash的详细指南,"java在domino中的使用"可能会讲解如何创建和部署Java Web服务,而"Webservice在domino中的使用"则可能涵盖了...
要使用Java访问Domino对象,首先需要在环境中配置JDK和IDE,例如Eclipse或IntelliJ IDEA。然后,引入Lotus Domino的JAR库,这些库提供了访问Domino对象的API。常见的访问协议有IIOP(Internet Inter-ORB Protocol)...
- 使用`ping`命令检查Domino服务器是否可访问。 - 使用`telnet`命令测试端口是否开放,特别是DIIOP默认使用的端口63148。 - 检查防火墙设置,确保相应的端口没有被阻止。 如果出现任何网络连接问题,需要先解决这些...
以下是一个使用Java读取Domino数据库并将数据写入XML文件的示例代码: ```java package test; import lotus.domino.*; import java.util.*; import java.io.*; public class ReadThread1 implements Runnable { ...
### 使用Java访问Domino对象详解 #### 一、概述 本文档主要介绍如何利用Java语言访问Domino对象,包括数据库、视图、文档等。这些操作对于开发基于Lotus Domino/Notes的应用程序至关重要。文中所述内容主要适用于...
Notes.jar lotus.domino.* java连接domino 没有分数的可以到 http://www.ibm.com/developerworks/apps/download/index.jsp?contentid=50943&filename=DominoJSPArticle.zip&method=http&locale=worldwide
- Java API为开发者提供了通过Java应用程序操作Domino数据库的能力,使得可以在Java应用中实现对Domino数据的增删查改等功能。 3. **基本概念**: - **NotesThread**: 用于初始化和清理线程环境。 - **Sessions*...