当前位置: 首页 > 知识库问答 >
问题:

Javamail无法连接到后缀localhost服务器

段兴为
2023-03-14

我正在尝试使用 javamail 连接到本地后缀鸽子服务器。我已经使用 Thunderbird 成功连接到服务器,所以我知道我的用户名和密码是正确的,但我总是得到

Javax.mail.AuthenticationFailedException: [AUTHENTICATIONFAILED] Authentication failed. 
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:661)
at javax.mail.Service.connect(Service.java:295)
at servers.MailEngine.initMailServer(MailEngine.java:661);

我所知道的唯一一件事就是改变java。禁用一些不太安全的协议。dovecot需要什么协议?还是我看错了方向。

如果这是一个协议问题,是否有任何方法可以将参数传递给编译器?我确实有其他服务,我想阻止支持禁用的协议

编辑:

Session emailSessionObj;
Store storeObj;
Properties props = new Properties();
props.put("mail.imap.host", 127.0.0.1);
props.put("mail.imap.port", 143);

emailSessionObj = Session.getDefaultInstance(props);
storeObj = emailSessionObj.getStore("imap");

storeObj.connect("127.0.0.1", 143, "username","password");

这是我使用的代码

这是调试输出

DEBUG: setDebug: JavaMail version 1.5.0-b01
DEBUG: getProvider() returning javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Oracle]
DEBUG IMAP: mail.imap.fetchsize: 16384
DEBUG IMAP: mail.imap.ignorebodystructuresize: false
DEBUG IMAP: mail.imap.statuscachetimeout: 1000
DEBUG IMAP: mail.imap.appendbuffersize: -1
DEBUG IMAP: mail.imap.minidletime: 10
localhost : 143 : from@smsmail.pittsburgfoundry.com : smsmailpass:DEBUG IMAP: trying to connect to host "localhost", port 143, isSSL false
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN] Dovecot (Ubuntu) ready.
DEBUG IMAP: AUTH: PLAIN
DEBUG IMAP: protocolConnect login, host=localhost, user=from@smsmail.pittsburgfoundry.com, password=<non-null>
DEBUG IMAP: AUTHENTICATE PLAIN command trace suppressed
DEBUG IMAP: AUTHENTICATE PLAIN command result: A0 NO [AUTHENTICATIONFAILED] Authentication failed.

共有1个答案

夏英发
2023-03-14

最后,它最终是过时的javamail和我的地图身份验证的一些问题的结合。

另一个问题是用户名被输入为xxx@yyy.zzz,它只是想要xxx。来自dovecot和pam的调试消息太模糊而没有太大帮助,因为它没有找到用户名

 类似资料:
  • 问题内容: 我是nodeJS的新手,通过关注youtube上的预告片开始学习,直到我添加了connect函数(如果mongodb, 当我在cmd(节点启动应用)上运行代码时,出现以下错误, 有人可以解释一下我错过了哪一步吗?我的代码: 问题答案: 您必须先在系统中安装数据库服务器并启动它。 使用以下链接进行安装 https://docs.mongodb.com/manual/installatio

  • 问题内容: 当我尝试使用PHP发送电子邮件时,我一直收到此错误消息: 我的php.ini看起来像这样: 我将笔记本电脑用作服务器。.我在做什么错?谢谢。 问题答案: 您需要在本地运行邮件服务器。如果是Unix,请启用sendmail。如果是Windows,请安装IIs的“简单邮​​件传输服务器”(不确定名称是否正确)组件。

  • 我正在尝试从我的java发送电子邮件,但我无法连接到我的主机。这里是我的代码: 这里是我的代码: 这里又是我的报告错误: 有人能帮帮我吗?:(

  • 我在设置打开班次时遇到问题,并在连接到我的服务器域后收到以下错误: 我不确定这是在告诉我做什么。我尝试按字面意思使用指令,但它无法识别命令。 有什么想法吗?

  • 问题内容: 我不确定如何解决此问题 我不知道为什么在尝试以下操作时会出现此错误: 当我尝试连接到postgres时: 问题答案: 可能是一些问题: PostgreSQL没有运行。用sudo检查 你的PostgresSQl不在端口5432上运行。你可以检查其键入 尝试连接到数据库时出现错误,例如用户名,密码或数据库名。检查它们是否是postgres要求你连接的对象,并且这是你要访问的db_name。

  • 在我做了和之后,我的postgres遇到了一些问题。我试着卸载postgres并重新安装它,但它并没有那么好用。 这就是我所做的: 现在,在我重新安装homebrew之后,当我使用时,它不显示任何错误消息。 但是我在我的Rails应用程序中运行,它显示: 更新 这对我也管用。