我想在向收件人發送電子郵件時包含附件。我已經能夠設置和獲取附件,但是當從 Javaxmail 調用 attachFile 方法時出現錯誤。此代碼是使用 javax 庫用 Java 編寫的。一切似乎都很好,但失敗了。我也嘗試過添加編碼,但結果相同。當調用 attachFile 方法時,此代碼失敗。attachPart.attachFile(f); // fails here...try {Message msg = new MimeMessage(propsSess);msg.setFrom(new InternetAddress(this.defaultSenderAddress));setRecipient(msg, this.sendTo, "to");msg.setSubject(this.subject);msg.setContent(this.bodyHtml, "text/html");msg.setHeader("X-Mailer", "Java Agent");msg.setSentDate(new Date());if (!this.bodyAttach.isEmpty()) { BodyPart messageText = new MimeBodyPart(); messageText.setText(this.bodyHtml); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageText); // adds attachments for (int index = 0; index < this.bodyAttach.size(); index++) { MimeBodyPart attachPart = new MimeBodyPart(); try { System.out.println(this.bodyAttach.get(index)); // shows only 1st attachments File f = new File(this.bodyAttach.get(index)); attachPart.attachFile(f); // fails here... } catch (IOException ex) { ex.printStackTrace(); } multipart.addBodyPart(attachPart); } // sets the multi-part as e-mail's content msg.setContent(multipart);}SMTPTransport transport = (SMTPTransport) propsSess.getTransport("smtp");transport.connect(this.smtpServerAddress, null, null);if (transport.isConnected()) { transport.sendMessage(msg, msg.getAllRecipients()); transport.close(); this.processMessage.add("success");}} catch (Exception e) {this.processMessage.add(databaseTitle + ": SmtpMail bean: Message or SMTPTransport error");return false;}
Xpages - java.lang.NoSuchMethodError: javax/mail/
慕田峪7331174
2023-06-14 16:03:21