利用notes.jar包,我在j2ee中编写了实现notes邮件发送的方法(如下),第一次调用进行邮件发送没有问题,但是再次调用时,程序在lotus.domino.NotesFactory.createSession(host, username,password)处死锁不动了,不知道原因为何,高手给分析一下。
我的运行环境:win2000, websphere6.1, notes客户端版本为6.5。
====程序如下======
//发送Notes邮件
public static String[] sendNotes(Notesqueue nq) throws NotesException, Exception{
//System.out.print("start...");
String servername0 =nq.getNotesparam().getServername();// "XXXXXXXXXX/服务器/XXXX";
String nsfpath0 =nq.getNotesparam().getNsfpath();// "mail\\FH0_Mail\\王位.nsf";
String host=null; //必须为null!!
String username=null;//必须为null!!
String password="11111111";
Vector recipientsList;
recipientsList=getRecipients(nq.getRecipients()==null?null:nq.getRecipients().split("[, \b\t]+")); //发送
Vector copyToList;
copyToList=getRecipients((nq.getCopyto()==null||nq.getCopyto().equalsIgnoreCase("null"))?null:nq.getCopyto().split("[, \b\t]+")); //抄送
Vector blindCopyToList;
blindCopyToList=getRecipients((nq.getBlindcopyto()==null||nq.getBlindcopyto().equalsIgnoreCase("null"))?null:nq.getBlindcopyto().split("[, \b\t]+")); //密送
String title=nq.getTitle(); //主题
String text =nq.getBody(); //正文
String[] accessoryLists=nq.getAccessory()==null?null:nq.getAccessory().split("[|;]+"); //附件文件名列表(全路经)
lotus.domino.Session dominoSession=null;
lotus.domino.Database db=null;
lotus.domino.Document domMail=null;
lotus.domino.NotesThread.sinitThread();
try{
//lotus.domino.Session session = lotus.domino.NotesFactory.createSession();
dominoSession = lotus.domino.NotesFactory.createSession(host, username,password);
db=dominoSession.getDatabase(servername0,nsfpath0,false);
domMail=db.createDocument();
//System.out.println("抄送");
//抄送
domMail.replaceItemValue("CopyTo",copyToList);
//System.out.println("密送");
//密送
domMail.replaceItemValue("BlindCopyTo",blindCopyToList);
//System.out.println("主题");
//主题
domMail.replaceItemValue("Subject",title);
//System.out.println("正文");
//正文
domMail.appendItemValue("Form","Memo");
//RichTextItem body=domMail.createRichTextItem("body");
lotus.domino.RichTextItem body=domMail.createRichTextItem("body");
body.appendText(text);
//System.out.println("附件");