java访问lotus数据库,出现4486错误??
package page;import java.io.*;
import java.util.Vector;
import lotus.domino.*;
public class page {
public static void main(String argv[]) {
Session session;
String ior;
String dominoURL = "192.168.1.101"; // DOMINO服务器的。lP地址:63148
String username = "rsj/HomeAdmin"; // 用户ID
String password = "(24BB8A92D920811B18174A600C6284A0)"; // 用户的internet口令
try {
// 如果已将ior文件拷到本地,则直接读ior文件
try {
BufferedReader iorin =
new BufferedReader(new FileReader("diiop_ior.txt"));
ior = iorin.readLine();
iorin.close();
} catch (IOException e) {
ior = null;
}
// 如果读不到diiop_ior.txt文件,则需要通过网络从服务器下载这个文件
// 这需要domino服务器开放http服务
if (ior == null)
ior = NotesFactory.getIOR(dominoURL);// 下载IOR
System.out.println(ior);
session = NotesFactory.createSessionWithIOR(ior, username, password);
//session = NotesFactory.createSession(ior, username, password);
System.out.println(session); // 如果这一行打印出来了,表示连接成功
Database db = session.getDatabase(null, "names.nsf");
View viewR = db.getView("people");
Document docR = viewR.getFirstDocument();
docR = viewR.getLastDocument();
System.out.println(db.getTitle());
Vector items = docR.getItems();
for (int j = 0; j < items.size(); j++) {
Item item = (Item) items.elementAt(j);
System.out.println(item.getName() + " = '"
+ item.getValueString() + "'");
}
} catch (NotesException ex) {
System.out.println(ex.getClass().getName() + ":" + ex.id);
ex.printStackTrace();
}
}
}
可以取到IOR
IOR:010000002900000049444c3a6c6f7475732f646f6d696e6f2f636f7262612f494f626a6563745365727665723a312e3000000000010000000000000070000000010101000e0000003139322e3136382e312e31303100acf6310000000438353235363531612d656336382d313036632d656565302d303037653264323233336235004c6f7475734e4f490100010000000100000001000000140000000100000001000105000000000001010000000000
lotus.domino.NotesException:4486
lotus.domino.NotesException
at lotus.domino.NotesExceptionHelper.read(NotesExceptionHelper.java)
at lotus.domino.NotesExceptionHolder._read(NotesExceptionHolder.java)
at com.ibm.CORBA.iiop.RepImpl.invoke(RepImpl.java:325)
at com.ibm.CORBA.portable.ObjectImpl._invoke(ObjectImpl.java:36)
at lotus.domino.corba._IObjectServerStub.createSession(_IObjectServerStub.java)
at lotus.domino.cso.Session.OREFtoSession(Session.java:829)
at lotus.domino.cso.Session.<init>(Session.java:72)
at lotus.domino.cso.Session.createSession(Session.java:40)
at lotus.domino.NotesFactory.createSessionWithIOR(NotesFactory.java:153)
at page.page.main(page.java:42)
--------------------编程问答-------------------- 通过DIIOP访问需要提供的是web登录的用户名和密码不是id --------------------编程问答-------------------- server 上要启用DIIOP服务才可以连接
补充:企业软件 , Lotus