【问题标题】:Open Mail Client through Web (Java - Spring)通过 Web 打开邮件客户端 (Java - Spring)
【发布时间】:2012-12-04 11:02:23
【问题描述】:

我有一个使用 Java Server Pages 运行 Java 的网页。我让用户确定他想向哪些其他用户发送电子邮件,然后进入我的方法,检查他们的邮件地址。之后,我希望客户端邮件程序使用预先填写的标签(To、CC、BCC)打开。

目前我使用Desktop.getDesktop().mail()。它在我的电脑上的测试服务器上运行良好,但在我们的网络服务器上却不行。它产生一个“空指针异常”(我猜在服务器上找不到邮件客户端)。

如果我只是将 mailto 作为函数的返回地址发送:return mailto:jack-normal@abc.de?cc=abc@de.fe,邮件客户端会被打开,但用户也会在网络浏览器中看到一个空白页面!不要安静我想要的。

我没有找到从 web 搜索用于打开 web 客户端的 stackoverflow 的解决方案......

【问题讨论】:

    标签: java jsp email client


    【解决方案1】:

    你可以用一些 JavaScript 来做到这一点:

    <html>
    <head>
    </head>
    <body>
    <a href="#" id="mailLink">Mail</a>
    <script>
    document.getElementById("mailLink").onclick = function() {
        window.location = "mailto:jack-normal@abc.de?cc=abc@de.fe";
    }
    </script>
    </body>
    </html>
    

    如果在这个阶段不知道地址,您可以重新加载相同的页面并使用一些 jQuery 代码:

    $(document).ready(function() {
        window.location = "mailto:jack-normal@abc.de?cc=abc@de.fe";
    });
    

    或者只是通过 AJAX 调用加载电子邮件地址:

    $.ajax({
      url: "mail.data",
      cache: false
    }).done(function( data ) {
      window.location = data;
    });
    

    【讨论】:

    • 是的,但是这一步中的邮件是未知的。它们将在 servlet 中提取,而不是在 jsp 中。
    猜你喜欢
    • 2023-03-19
    • 2015-07-16
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多