首页 通过DIIOP远程访问Domino
文章
取消

通过DIIOP远程访问Domino

1、启用Domino服务器DIIOP任务
控制台输入:load diiop
修改notes.ini配置ServerTask段,添加“DIIOP”
2、修改Domino服务器安全配置
如果从Internet文档加载配置还需要配置iiop站点文档
3、编写Java代码
引用Notes.jar(适用于本地调用,在Domino程序目录下)或者 NCSO.jar(适用于远程调用,在Domino数据目录下)
示例:
import lotus.domino.*;

/**
* 远程调用
*/
public class DIIOPDemo{

/**
* @param args
*/
public static void main(String[] args) {

try
{

String strHostName = "localhost.com";
String strDIIOPPort = "63148";
String strUser = "admin";
String strPwd = "12345678";

// Get IOR using Web server port
//String ior = NotesFactory.getIOR(strHostName);

// // OR Get IOR From local file
// FileInputStream fin = new FileInputStream("c:\diiop_ior.txt");
// InputStreamReader fisr = new InputStreamReader(fin);
// BufferedReader br = new BufferedReader(fisr);
// String ior = br.readLine();
// fin.close();

// Create session using DIIOP port
//Session s = NotesFactory.createSessionWithIOR(ior, strUser, strPwd);

Session s = NotesFactory.createSession(strHostName + ":" + strDIIOPPort, strUser, strPwd);

System.out.println("Domino Server Name:" + s.getServerName());
}
catch(NotesException ne){
System.out.println(ne.id + " " + ne.text);
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
}
}
}

其他

Tell DIIOP show config 查看DIIOP配置

错误处理

DIIOP Server: Unable to obtain the server's name or IP address
服务器文档 设置全限定的 Internet 主机名为ip地址

NotesException - 4457 Could not get IOR from HTTP Server
检查是否启用DIIOP、HTTP,匿名HTTP是否启用
如果是R5的话把连接DIIOP的HOST NAME中把63148端口去掉试试

参考:Java 对 Domino Objects 的访问,第 1 部分

Java 对 Domino Objects 的访问,第 2 部分

'NotesException: Could not get IOR from Domino Server'

How to enable single sign-on (SSO) for DIIOP

本文由作者按照 CC BY 4.0 进行授权