首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jacob集成Tomcat和Microsoft Outlook

使用Jacob集成Tomcat和Microsoft Outlook
EN

Stack Overflow用户
提问于 2018-04-07 01:46:30
回答 1查看 204关注 0票数 1

我有一个运行在Tomcat上的Java应用程序,它需要在连接客户端的计算机上生成一封发送到Outlook的电子邮件。目前,我的代码总是将电子邮件定向到运行tomcat的服务器上的Outlook,而不是指向连接的客户端。我已将用于连接到Outlook的代码附加到下面。任何帮助实现这一目标的人都将不胜感激。

代码语言:javascript
复制
package org.outlook.emails;

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;

public class EmailAPI
{
    private ActiveXComponent ol;
    private Dispatch outlook;
    private Object mapi[] = new Object[1];
    private Object email[] = new Object[1];

    public EmailAPI()
    {
        mapi[0] = "MAPI";
        email[0] = 0;

        ol = new ActiveXComponent("Outlook.Application");
        outlook = ol.getObject();
        Dispatch.call(outlook,"GetNamespace",mapi).toDispatch();
    }

    public void createEmail(String receiver,String cc,String subject,    String body, String attachments[])
    {
        Dispatch mail = Dispatch.call(outlook,"CreateItem",email).toDispatch();
        Dispatch inspector = Dispatch.get(mail, "GetInspector").getDispatch();  
 Dispatch recipients = Dispatch.call(mail, "Recipients").getDispatch(); 
        Dispatch.call(recipients, "Add" , receiver); 
        Dispatch.put(mail, "CC",cc);
        Dispatch.put(mail, "Subject", subject);
        Dispatch.put(mail, "Body", body);

        if(attachments.length>0)
        {
            Dispatch attachs = Dispatch.get(mail, "Attachments").toDispatch();

            for(Object attachment : attachments)
            {
                Dispatch.call(attachs, "Add", attachment);
            }
        }

        Dispatch.call(mail, "Send");
    }
}

谢谢。

Med

EN

回答 1

Stack Overflow用户

发布于 2018-04-09 23:13:22

您必须将代码传输到客户端并在那里执行它。这对于java applet来说是可能的,但是最近已经被移除/禁用。另一种可能是java web start技术,它可以为您做到这一点。然而,它也支持will be removed in future版本的java。因此,现在我们对您的场景了解得太少了,但我建议您再次进行一些评估/分析。根据您的需求,有几种可能性,人们只能猜测最适合您的选项是什么。一些选项:

  • 使用java web start由于您只需要在有限的时间内提供该功能,因此您需要编写一个独立的Java应用程序(例如,您可以管理公司的所有客户端)
  • 您可以使用javascript来启动客户端上安装的任何电子邮件客户端(例如,here
  • you或某些仅限IE的解决方案javascript实现您自己的HTML电子邮件Web表单并从服务器发送电子邮件)(这比您想象的要容易,可能除了电子邮件基础架构questions)
  • ...several more options

之外

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49698419

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档