0

嗨,当我在家用电脑上尝试以下代码时,它工作正常。

 Properties props=new Properties();
   props.put("mail.smtp.host", "smtp.gmail.com");
   props.put("mail.smtp.socketFactory.port", 465);
   props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
   props.put("mail.smtp.auth", true);
   props.put("mail.smtp.port", 465);

  Session sess=Session.getDefaultInstance(props,
          new javax.mail.Authenticator() {
          protected PasswordAuthentication getPasswordAuthentication(){
          return new PasswordAuthentication("user email ID","password");

          }
          });


  try{
     Message msg=new MimeMessage(sess); 
     msg.setFrom(new InternetAddress("sunnykeerthi@gmail.com"));
     msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse("sunnykeerthi@gmail.com"));
     msg.setSubject("Hi this is mail");
     msg.setText("Hi this is an email sent from java");
     Transport.send(msg);
     JOptionPane.showMessageDialog(null, "message has been sent");

  }
  catch(Exception e)
  {
      JOptionPane.showMessageDialog(null, e);
  }

但是当我在我的办公室电脑上尝试相同的操作时,它给了我附加屏幕中的错误。 Java 邮件错误 o/p 请帮忙。

4

1 回答 1

0

您的公司是否可能正在过滤端口 25?当您将 gmail 设置为 smtp 时,您可以从本地桌面客户端(outlook、thunderbird ...)发送邮件吗?

您可以尝试在您的 java 代码中设置您的公司 smtp 服务器吗?

于 2012-12-04T10:00:36.240 回答