2012-01-10 127 views
0

我們需要從JSP頁面打開Lotus Notes客戶機。自動化Lotus Notes中的郵件

目前在JSP我們正在開拓利用ActiveXObject(Outlook.Application)

的從郵件,通過電子郵件發送給Microsoft Outlook客戶端,郵件主題和郵件正文應該從請求範圍填充。我有一個解決方案,但它可能只能直接發送郵件,我需要打開Lotus Notes頁面。有一些方法,如sendto,form,create。當我們在輸入所有細節後點擊提交按鈕時,是否有任何方法可以打開撰寫郵件選項?不僅JavaScript。如果解決方案在Java中也沒有問題。

基本上,用戶只需點擊頁面上的某個鏈接,然後Lotus Notes客戶端應該打開預填充信息。最後,用戶將查看電子郵件內容,添加他們需要添加到電子郵件正文中的任何消息,然後發送電子郵件。如果可能的話,請將代碼發給我。

+1

如果其中一個答案對您有幫助,請接受它作爲答案。 – 2012-01-12 14:46:12

回答

2

它應該像這樣工作。自從我實施這個以來已經有一段時間了。如果我沒有記錯的話,你應該:http://www.ibm.com/developerworks/lotus/library/ls-Java_access_pt1/index.html

  • 撰寫形式memo的一個新的文檔在目標郵件數據庫,並填寫必填字段:

    1. 按照本教程中創建的Lotus Notes會話。喜歡的東西:

      Document doc = db.createDocument("Memo"); 
      doc.setItemValue("Subject", "My Subject"); 
      doc.setItemValue("SendTo", "MyEmailAddresses"); 
      
      RichTextItem rti = doc.getFirstItem("Body"); 
      rti.addText("MyMailContent"); 
      
      doc.save();
    2. 得到你與doc.getUrl()之前創建的文檔的URL,並出示此URL作爲JSP中的鏈接。

  • 2

    根據您的文章here,它看起來像你正在使用後端類,當你想使用前端/ UI功能。

    我同意this post - 如果可能,您應該使用mailto: link來實現此功能。如果Lotus Notes是他們的默認電子郵件程序,則mailto:鏈接將啓動Notes客戶端,撰寫備忘錄並使用您指定的內容填充所需的字段。

    如果mailto:不能滿足您的需求,可以嘗試使用「Lotus Notes自動化類」中的前端類。這是來自CodeProject後的示例代碼的修改版本:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
        <title>Lotus</title> 
        <script language="javascript" type="text/javascript"> 
    function SendScriptMail() { 
        var mToMail = document.getElementById('txtMailId').value 
        var mSub = document.getElementById('txtSubject').value 
        var mMsg = document.getElementById('txtContent').value 
        var Session; 
        var Maildb; 
        var UI; 
        var MailDoc; 
        try { 
         // Create the Activex object for NotesSession 
         Session = new ActiveXObject('Notes.NotesSession'); 
         if (Session == null) { 
          throw("NoSession"); 
         } else { 
          // Get mail database 
          Maildb = Session.GetDatabase("", ""); 
          Maildb.OPENMAIL(); 
          if (Maildb == null) { 
           throw("NoMaildb"); 
          } else { 
           // Create the ActiveX object for NotesUIWorkspace 
           UI = new ActiveXObject('Notes.NotesUIWorkspace'); 
           if (UI == null) { 
            throw("NoUI"); 
           } else { 
            MailDoc=UI.Composedocument(Maildb.SERVER, Maildb.FILEPATH, 'Memo'); 
            if (MailDoc == null) { 
             throw('NoMailDoc'); 
            } else { 
             // Populate the fields 
             MailDoc.Fieldsettext('SendTo', mToMail); 
             MailDoc.Fieldsettext('Subject', mSub); 
             // insert message body and place cursor at end of text 
             MailDoc.Gotofield('Body'); 
             MailDoc.Inserttext(mMsg); 
             // destroy the objects 
             Session.Close(); 
             Session = null; 
             UI = null; 
             Maildb = null; 
             MailDoc = null; 
            } 
           } 
          } 
         } 
        } catch (err) { 
         // feel free to improve error handling... 
         alert('Error while sending mail'); 
        } 
    } 
        </script> 
    </head> 
    <body> 
        <table width="100%" height="100%"> 
         <tr> 
          <td width="40%" height="130px"> 
          </td> 
          <td> 
          </td> 
          <td width="40%"> 
          </td> 
         </tr> 
         <tr> 
          <td> 
          </td> 
          <td> 
           <table width="100%"> 
            <tr> 
             <td style="color: Black; font-size: 10px; font-family: Verdana; text-align: left;" 
              width="50px" valign="top"> 
              Mail Id</td> 
             <td> 
              <input id="txtMailId" style="color: #000000; font-size: 10px; font-family: Verdana; 
               height: 11px; text-align: left; top: auto; border: 1px solid #336699; text-decoration: none; 
               width: 176px;" type="text" maxlength="50" /></td> 
            </tr> 
            <tr> 
             <td style="color: Black; font-size: 10px; font-family: Verdana; text-align: left;" 
              valign="top"> 
              Subject</td> 
             <td> 
              <input id="txtSubject" style="color: #000000; font-size: 10px; font-family: Verdana; 
               height: 11px; text-align: left; top: auto; border: 1px solid #336699; text-decoration: none; 
               width: 176px;" type="text" maxlength="50" /></td> 
            </tr> 
            <tr> 
             <td style="color: Black; font-size: 10px; font-family: Verdana; text-align: left; 
              height: 79px;" valign="top"> 
              Content</td> 
             <td> 
              <textarea id="txtContent" cols="20" style="color: #000000; font-size: 10px; font-family: Verdana; 
               height: 75px; text-align: left; top: auto; border: 1px solid #336699; text-decoration: none; 
               width: 176px;"></textarea></td> 
            </tr> 
            <tr> 
             <td> 
             </td> 
             <td> 
              <input id="btnSend" type="button" onclick="SendScriptMail();" style="font-family: Verdana; font-size: 11px; text-align: center; 
               top: auto; width: 60px; background-color: #A55129; border: 1px solid #336699; 
               text-decoration: none; font-weight: normal; color: #FFFFFF;" value="Send" /> 
              <input id="btnCancel" style="font-family: Verdana; font-size: 11px; text-align: center; 
               top: auto; width: 60px; background-color: #A55129; border: 1px solid #336699; 
               text-decoration: none; font-weight: normal; color: #FFFFFF;" type="button" value="Cancel" /></td> 
            </tr> 
           </table> 
          </td> 
          <td> 
          </td> 
         </tr> 
         <tr> 
          <td height="130px"> 
          </td> 
          <td> 
          </td> 
          <td> 
          </td> 
         </tr> 
        </table> 
    </body> 
    </html>