Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为Microsoft Exchange配置JavaMail?_Java_Jakarta Mail_Exchange Server 2010 - Fatal编程技术网

如何为Microsoft Exchange配置JavaMail?

如何为Microsoft Exchange配置JavaMail?,java,jakarta-mail,exchange-server-2010,Java,Jakarta Mail,Exchange Server 2010,我正在尝试使用JavaMail 1.5.1连接到Microsoft Exchange(2010)邮件帐户。当我尝试连接时,出现以下异常 Exception in thread "main" com.sun.mail.util.MailConnectException: Couldn't connect to host, port: domain server, 25; timeout -1; nested exception is: java.net.Sock

我正在尝试使用JavaMail 1.5.1连接到Microsoft Exchange(2010)邮件帐户。当我尝试连接时,出现以下异常

Exception in thread "main" com.sun.mail.util.MailConnectException:
    Couldn't connect to host, port: domain server, 25; timeout -1;
      nested exception is:
        java.net.SocketException: Permission denied: connect 
这是我正在使用的代码

public class SendMail 
{
    public void mail () throws MessagingException
    {
        Properties props = System.getProperties();
        String protocol = "smtp";

        // Setup mail server
        props.put("mail." + protocol + ".host", "domain server");
        props.put("mail." + protocol + ".auth", "true");
        props.put("mail." + protocol + ".port", "25");

        Session session = Session.getInstance(props);
        Transport t = session.getTransport(protocol);

        try{
            t.connect("domain\\user name", "password");

        }
        finally{
            t.close();
        }
    }
}
我做错了什么


域服务器替换为异常和代码中的实际服务器名。

在exchange服务器上,因此我只建议您尝试使用smtps并验证端口了吗。您的代码是否在应用程序服务器上运行,而安全管理器可能会阻止您连接?我认为问题在于以下一个或全部:1。错误的端口2。凭证格式不正确(不是常见问题解答中建议的“dom\juser\J.User”)。3.协议是错误的。我必须与设置Exchange服务器的管理员联系以了解更多详细信息(他正在度假)。SMTP是一种传输协议,IMAP是一种存储协议。它们不能互换。是的,希望这是显而易见的。尽管如此,您还是建议从SMTP切换到IMAP,这并不能解决问题。切换到一个微软专有协议可能会解决这个问题,如果问题是Exchange服务器没有被配置为允许SMTP访问。也许您可以考虑更新您的原始答案,以更好地解释您认为什么是显而易见的?或者不是。你的选择。既然这对我来说不那么明显,有人能解释一下吗?确切地说,解释一下什么?