Javaを使用してNotes APIを呼び出してメールを送信する方法(添付ファイルを含む)

1809 ワード

これをするのは确かに苦労して、半日ネット上ですべて1つの頼りになる教程を探し当てることができなくて、最后にやはりNotesのInfo Centerを见て完成しました.やり终わって见て、実は难しくなくて、いくつか注意しなければならない地方:
  • Importの場合はdomoinではなくnotes
  • を使います
  • 添付ファイルを生成するときにRitchTextとembedObjectを使います.私はこれに1日を無駄にしました.^^;
  • package com.ibm.mail;
    
    
    
    import lotus.notes.*;
    
    
    
    
    
    public class NotesJavaSample implements Runnable {
    
    	
    
    	public static void main(String argv[]) {
    
    		NotesJavaSample t = new NotesJavaSample();
    
    		NotesThread nt = new NotesThread((Runnable) t);
    
    		nt.start();
    
    	}
    
    
    
    	public void run() {
    
    		try {
    
    			final String mymailserver = "mailserver"; 
    
    			final String mymailfile = "mail6/mymail.nsf"; 
    
    
    
    			Session s = Session.newInstance();
    
    			String p = s.getPlatform();
    
    			System.out.println("Platform = " + p);
    
    
    
    			Registration reg;
    
    			reg = s.createRegistration();
    
    			reg.switchToID ( "C:/notes/data/myid.id", "mypass" );
    
    
    
    			Database db;
    
    			db = s.getDatabase(mymailserver, mymailfile);
    
    			System.out.println("Database title is " + db.getTitle()
    
    					+ " and filepath is " + db.getFilePath());
    
    	
    
    			Document mailmessage;
    
    			
    
    			mailmessage = db.createDocument();
    
    			mailmessage.replaceItemValue("Form", "Memo");
    
    			mailmessage.replaceItemValue("Subject",
    
    					"Testing the Java interface,how should this work for attach");
    
    			mailmessage.replaceItemValue("SendTo",
    
    					"[email protected]");
    
    			RichTextItem rtitem = mailmessage.createRichTextItem("body");
    
    			rtitem.embedObject(EmbeddedObject.EMBED_ATTACHMENT,
    
    					null, "d:\
    otes.txt", "notes.txt"); mailmessage.save(); mailmessage.send("[email protected]"); } catch (Exception e) { e.printStackTrace(); } } }