读书人

利用notes.jar的接口在J2EE中实现note

发布时间: 2012-03-29 12:53:12 作者: rapoo

利用notes.jar的接口在J2EE中实现notes邮件发送时存在的问题!
利用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("附件");


//附件
if (accessoryLists!=null)
for(int k=0;k<accessoryLists.length;k++) {
if (accessoryLists[k].trim().length()==0)
continue;
body.embedObject(1454, "", accessoryLists[k], accessoryLists[k]);
}

//发送
domMail.replaceItemValue("SendTo",recipientsList);
domMail.send();

//保存邮件到发件箱
domMail.save(true);

lotus.domino.NotesThread.stermThread();
}
catch(Exception e )
{
log.error("sendNotes() error!"+e.getMessage());
e.printStackTrace();
throw e;
}
finally {
//lotus.domino.NotesThread.stermThread();
}
return accessoryLists;
}



[解决办法]
quietman,问题可以同时提到WebSphere问答专区。

http://www.webspherechina.net/club/index.php?gid=83

增加一个解决问题的途径。

读书人网 >其他服务器

热点推荐