`

java调用domino

 
阅读更多
java访问操作lotus domino数据库
有几种方式:  
  1、直接使用domino本身的jar文件接口,这种连接方式需要domino服务器启动diiop服务;  
  2、使用domino的lddj接口,接口可以到ibm的网站上去下载,这种连接方式只能在window环境下使用,需要安装notes客户端,使用id来验证的,需要手动输入密码;  
      http://www-12.lotus.com/ldd/doc/drivers/jdbc/1.5/lddj_help.nsf  
  3、使用corba来访问domino,这个比较烦,我至今没有调通  
  http://www.oaunion.com/oaunion/o ... pendocument&skeyword=corba发表者:slzhang
是可以通过java来取得domino的资料.也可以通过jsp来读domino里的资料,只要你在domino上打开diiop服务就可以.  
  附一个jsp的例子如下:  
  <%@   page   c   language="java"%>  
  <%@   page   import="com.dragon.*"   %>  
  <%@   page   import="lotus.domino.*"   %>  
  <%!    
  session   sess;  
  database   db;  
  view   view;  
  document   doc;  
  string   host   =   "",user   =   "",   pawd   =   "";  
    %>  
  <%    
  try{  
  sess   =   notesfactory.createsession("192.168.2.1","admin","12345678");  
  host   =   sess.getservername();  
  user   =   sess.getusername();  
  system.out.println("host:   "   +   host   +   ";   user:   "   +user);  
  db   =   sess.getdatabase(host,"fawen\\sample.nsf",false);  
  view   =   db.getview("jsp");  
  doc   =   view.getfirstdocument();  
  out.println(db.gettitle());  
  }catch(notesexception   ne){  
  system.out.println("error:   "   +   ne.id   +   "   ==>   "   +   ne.getmessage());  
  }  
    %>  
    <html>  
    <head>  
    <title>jsp   get   domino   data</title>  
    </head>  
    <body>  
    <table   border="1"   bgcolor="#ff33cc">  
    <tr><th>   姓名</th><th>性别</th><th>生日</th><th>职务</th><th>职称</th><th>   部门</th></tr>  
    <%  
    while(doc!=null){  
    %>  
  <tr>  
   
  <td><%=   doc.getitemvalue("jname")   %></td>  
  <td><%=   doc.getitemvalue("jsex")   %></td>  
  <td><%=   doc.getitemvalue("jbirth")   %></td>  
  <td><%=   doc.getitemvalue("jjob")   %></td>  
  <td><%=   doc.getitemvalue("jjobtitle")   %></td>  
  <td><%=   doc.getitemvalue("jdept")   %></td>  
  </tr>  
  <%  
  doc   =   view.getnextdocument(doc);  
  }  
  out.println("host:   "   +   host   +   ";   user:   "   +user);  
  doc.recycle();  
  view.recycle();  
  db.recycle();  
  sess.recycle();  
  %>  
  </table>  
    </body>  
    </html>
发表者:cnhxjtoa
以前我写过domino5-->oracle8  
  以下是与domino建立链接的相关代码  
    import   lotus.domino.*;    
   
  try   {  
                         
                          system.out.println("开始notes数据源进行连接....");  
                          session   s   =   notesfactory.createsession(noteshost,username,userpassword);  
                          system.out.println("与notes数据源成功连接,现正在查找notes登录数据库oak.nsf");  
                          //定义全局性变量  
                          database   db   =   null;  
                          database   namesdb=null;  
                          view   view   =null;  
                          document   doc   =   null;  
                          string   namesuser="";  
                          db   =   s.getdatabase(s.getservername(),   sysinf.notes_dir   +"/oak.nsf");  
                          acl   acl   =   db.getacl();  
                          aclentry   entry   =   acl.getfirstentry();  
                          namesdb=s.getdatabase(s.getservername()   ,"names.nsf")   ;  
                          view   =   namesdb.getview("groups");  
                          do  
                          {  
                                  //具体分析每一个对象  
                                  switch   (entry.getusertype())   {  
                                          case   aclentry.type_mixed_group   :  
                                                  //混合组  
                                                  system.out.println("混合组     "+entry.getname())   ;break;  
                                          case   aclentry.type_person   :  
                                                  //个人  
                                                  namesuser=entry.getname().substring(3,entry.getname().indexof("/")     );  
                                                  addnotesuser(namesuser);  
                                                  system.out.println("个人   :   "+   namesuser)   ;  
                                                  break;  
                                          case   aclentry.type_person_group   :  
                                                  //个人群组  
                                                  system.out.println("个人群组:     "+entry.getname()   )   ;  
                                                  //names.nsf   中视图groups   文档members域有每一个用户  
                                                  doc   =   view.getfirstdocument();  
                                                  while   (doc   !=   null   &&   !doc.getfirstitem("listname").gettext().equals(entry.getname()   )       )  
                                                  {  
                                                          doc   =   view.getnextdocument(doc);  
                                                  }  
                                                  if   (doc!=null){  
                                                          enumeration   values   =   doc.getfirstitem("members").getvalues().elements();  
                                                          while   (values.hasmoreelements())   {  
                                                                  //将cn=administrator/o=autosoft只取它的名字administrator  
                                                                  namesuser=values.nextelement().tostring()   ;  
                                                                  namesuser=namesuser.substring(3,namesuser.indexof("/")   )   ;  
                                                                  addnotesuser(namesuser);  
                                                          }  
                                                  }  
                                                  break;  
                                          case   aclentry.type_server   :  
                                                  //服务器  
                                                  system.out.println("服务器     "+entry.getname())   ;break;  
                                          case   aclentry.type_server_group   :  
                                                  //服务器组  
                                                  system.out.println("服务器组     "+entry.getname())   ;break;  
                                          case   aclentry.type_unspecified   :  
                                                  //没有指定  
                                                  if(entry.getname().indexof("/")>1   )  
                                                  {  
                                                          namesuser=entry.getname().substring(3,entry.getname().indexof("/")     );  
                                                          addnotesuser(namesuser);  
                                                          system.out.println("找到一个没有指定类型的用户     "+entry.getname().substring(3,entry.getname().indexof("/")))   ;  
                                                          break;  
                                                  }  
                                                          else  
                                                          {  
                                                                  system.out.println("没有指定     "+entry.getname())   ;  
                                                                  break;  
                                                          }  
                                  }  
                          }   while   ((entry   =   acl.getnextentry(entry))   !=   null);  
                          system.out.println("用户导入完成")   ;  
                  }  
   
                  catch   (exception   ex)  
                  {  
                          ex.printstacktrace()   ;  
                          system.out.println("与notes数据源连接失败"   )   ;  
                  }
分享到:
评论

相关推荐

    java调试domino邮件常见问题

    ### Java调试Domino邮件常见问题 #### 背景与目的 ...以上步骤详细介绍了如何通过Java调用Domino服务器发送邮件时可能出现的问题及其解决方案。确保按照这些步骤仔细检查并配置,可以帮助开发者高效地完成任务。

    Java访问Domino的编程指南.doc

    Java 访问 Domino 对象可以使用 Domino API 读取 Domino 数。 Java 访问 Domino 对象需要了解 Domino 的基本结构和 Java 的编程语言特性。同时,Java 访问 Domino 对象需要经历预备步骤、JDK 及 IDE、API 及 访问...

    java操作domino

    下面的代码展示了如何使用Java操作Domino数据库并查询视图中的文档。 ```java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import lotus.domino.*; public class Query_View ...

    用Java 操作Domino 数据库例子

    3. **搜索文档集合**:使用`search`方法按条件搜索文档,这里使用Domino公式`@Contains(Form;\"FWDL\")`来获取特定表单的所有文档。 4. **遍历文档**:通过`DocumentCollection`对象的`getFirstDocument`和`...

    java访问domino数据库.rar

    在IT领域,Java是一种广泛使用的编程语言,而Lotus Domino是一种流行的企业级应用平台,尤其在协同工作和信息管理方面。本压缩包“java访问domino数据库.rar”提供了关于如何利用Java来访问和操作Domino数据库的重要...

    java连接domino帮助文档

    这篇文档将详细介绍如何使用Java与Lotus Domino进行交互,并基于提供的压缩包文件内容展开讨论。 首先,Java连接到Domino通常涉及以下知识点: 1. **JDBC驱动**:尽管Lotus Domino本身并不直接支持JDBC(Java ...

    用java访问domino对象

    本地调用使用 createSession 时,没有参数、第一个参数为 null、或第一个参数为空字符串都表示本地调用。例如: Session s = NotesFactory.createSession() Session s = NotesFactory.createSession((String)null) ...

    java webservice flash在domino中的使用

    "flash在domino中的使用"可能包含有关如何在Domino环境中使用Flash的详细指南,"java在domino中的使用"可能会讲解如何创建和部署Java Web服务,而"Webservice在domino中的使用"则可能涵盖了设置和调用Web服务的具体...

    Java 对 Domino 的访问

    3. **Web服务和REST API**:如果Domino服务器支持,这部分可能会介绍如何使用Java来调用Domino的Web服务接口,或者通过RESTful API进行数据交换。 4. **性能优化**:提供了最佳实践,帮助开发者减少不必要的服务器...

    java连接Lotes邮件服务器(Domino) 读取邮件内容附件完整实例

    1. **连接设置**:使用JNDI(Java Naming and Directory Interface)或Lotus Java API(LotusJCA)来配置与Domino服务器的连接。这涉及到设置服务器名称、数据库路径、用户名和密码等信息。 2. **打开数据库**:...

    Java访问Domino服务器.docx

    在《Java 访问 Domino 服务器》文档中,我们将学习如何使用 Java 语言访问 Domino 服务器。Domino 服务器是一个功能强大的电子邮件服务器,它提供了许多有用的功能,如全文检索、安全性和开发时效等。通过 Java 语言...

    如何用java远程访问Domino邮箱数据

    Java远程访问Domino邮箱数据是通过使用Lotus Domino Java API(Lotus Domino JNA或Lotus Domino Access for Java)来实现的。这个过程涉及到多个步骤和技术,包括理解Lotus Domino的架构、设置Java环境以及使用特定...

    用Java查询Domino服务器在线人数信息

    ### 使用Java查询Domino服务器在线人数信息:详细解析与实现 #### 核心知识点概览 1. **Domino服务器**:Domino是IBM开发的一款用于企业级协作、邮件服务和应用开发的软件平台。 2. **JavaAgent类**:在Domino环境...

    Domino的Java编程指南

    - **通过IIOP测试连接**:使用IIOP协议,Java客户端可以透明地与Domino服务器进行通信,类似于RMI(远程方法调用)。 - **通过IOR测试连接**:IOR是对象引用的二进制表示,可以用来直接定位和调用远程对象。 - **...

    java与Domino

    Java 与 Domino 是两个在企业级应用开发中广泛使用的平台,它们各有特色,但在某些方面也存在明显的差异。本文将深入探讨这两个平台的特点,以及它们在构建OA(Office Automation)系统时的应用情况。 首先,Domino...

    lotus domino lotusscript调用java

    lotus domino lotusscript调用java

    lotus domino java代理_获取传递值json

    在 Lotus Domino Java 代理中,我们可以使用 `PrintWriter` 对象来输出 JSON 字符串。例如: ```java PrintWriter printOutput = this.getAgentOutput(); printOutput.println("Content-type: application/json;...

    在domino中用JAVA的文档

    在Lotus Domino开发环境中,Java语言的使用是关键的一部分,尤其对于构建企业级应用程序和扩展Domino服务器功能而言。本文将深入探讨如何在Domino中使用Java,包括其优势、基本概念、设置环境、编写代码以及应用实例...

    Java访问Domino服务器[定义].pdf

    Java访问Domino服务器主要涉及到的是使用Java编程与IBM Lotus Domino服务器进行交互的技术。Lotus Domino是一种协同软件平台,常用于电子邮件、日历管理、任务分配等。本文将深入讲解如何利用Java来操作Domino服务器...

Global site tag (gtag.js) - Google Analytics