Friday, November 17, 2006

Mailing in Java Using Lotus Notes

Mailing in Java Using Lotus Notes
Date: 17 November' 2006

Add to Class Path:
C:\Program Files\Lotus\Notes\Notes.jar
Add to Environment Variable:
Path=C:\Program Files\Lotus\Notes;

Download the JAR domino-1.1.jar and place in class path

http://domingo.sourceforge.net/installation.html


Source Code



import de.bea.domingo.DDocument;
import java.util.Date;
import java.util.Iterator;

import de.bea.domingo.DDatabase;
import de.bea.domingo.DNotesException;
import de.bea.domingo.DNotesFactory;
import de.bea.domingo.DSession;
import de.bea.domingo.DView;
import de.bea.domingo.DViewEntry;
import lotus.notes.addins.util.MailMessage;


//http://www-128.ibm.com/developerworks/lotus/library/ls-Java_Mail_Forwarding_Agent/index.html

public class LotusMailer {

public static void main(String[] args) throws DNotesException {

// get an instance of the domingo factory
DNotesFactory factory = DNotesFactory.getInstance();

// create a session to the local Lotus Notes client
DSession session = factory.getSession();

// get the local database names.nsf
//DDatabase database = session.getDatabase("", "names.nsf");//names.nsf
DDatabase database = session.getDatabase("SERVER", "path\\to\\mailbox.nsf");

//MailMessage
System.out.println(database.getTitle());
DView view = database.getView("($Inbox)");
Iterator allEntries = view.getAllEntries();
System.out.println("Content of view ($Inbox)");

while (allEntries.hasNext())
{
DViewEntry entry = (DViewEntry) allEntries.next();
System.out.println("Entry :: " + entry.getDocument().getAuthors());
for (int i = 0; i < entry.getColumnValues().size(); i++)
{
System.out.println(i + "." +
entry.getColumnValues().get(i).getClass().getName() + " : " +
":" + entry.getColumnValues().get(i));
}
break;
}

DDocument d = database.createDocument();
d.setSaveMessageOnSend(true);
d.appendItemValue("Subject", "Automail");
d.appendItemValue("Body", "Today " + new Date());
d.appendItemValue("SentTo", "anyone@mail.com");
d.send("anyone@mail.com");
System.out.println("Mail sent !!!");
}
}

2 comments:

Anonymous said...

how to get email address of lotus notes using this example for reading mail anybody rply asap

Unknown said...

this worked for me. Thanks. But how can I attach multiple files ans send this email