javax.mail.messagingexception连接超时连接

时间:2015-11-26 12:47:46

标签: java email outlook jmail

下面的代码是Web应用程序的一部分。这负责连接Outlook邮件服务器。

    ls_user_pass = ldch_sys_users.getItemValue(1, "user_password").toString();      

    Store store = null;     
    String lstr_host = "",lstr_result= "no";
        HttpSession lssessionUserAuth = (HttpSession) ahm_args.get("session");  
        try {               

                Properties properties = new Properties();
                properties.setProperty("mail.store.protocol", "imaps");
                Session session = Session.getInstance(properties, null);                                
                lstr_host = "outlook.office365.com";                    
                store = session.getStore("imaps");
                store.connect(lstr_host, "rajesh___@outlook.com", ls_user_pass);
                if (store.isConnected()) {
                lstr_result = "yes";
                }               
        }catch(AuthenticationFailedException e){

        }
        return lstr_result;
}

当我在服务器上部署war时,我收到此错误javax.mail.messagingexception连接超时连接。 我已经打开了几个端口587,143,25并且在服务器防火墙上已经关闭。

但是当我在本地系统上通过eclipse工作时,它运行正常,没有任何问题。

1 个答案:

答案 0 :(得分:1)

它似乎仍然是防火墙/网络问题。 如果您从本地发送邮件,您可以使用WireShark检查流/端口等,之后您可以再次检查服务器的防火墙配置。

您也可以尝试手动设置端口: properties.put(" mail.smtp.port"," 587"); //" 587"应该是一个字符串,如果不是端口25将被使用

为了进一步了解,请写下检查结果。