标签: jakarta-mail

使用java邮件将图像嵌入到html电子邮件中

我用javamail发送html和图像但由于某种原因我没有看到图像作为html的一部分,我只把它们视为附件.我不知道为什么会这样.这是我的一个用户收到电子邮件时的样子: 在此输入图像描述

我还想提一下html的样子:

private String generateActivationLinkTemplate() {
    String htmlText = "";
htmlText ="<table width=\"600\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">  <tr>    <td><img src=\"cid:logoimg\"/></td>  </tr>  <tr>    <td height=\"220\"> <p>Thanks for Joining Site.com</p>      <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur …
Run Code Online (Sandbox Code Playgroud)

html java jakarta-mail java-ee ejb-3.0

15
推荐指数
2
解决办法
3万
查看次数

Java邮件,设置回复地址不起作用

我写了一个小的电子邮件发送程序在java,它有from,toreply-to解决,当客户端尝试回复邮件时,它应该能够回复该reply-to地址.目前它无法正常工作,我的代码如下:

// File Name SendEmail.java

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class SendEmail
{
   public static void main(String [] args)
   {

      // Recipient's email ID needs to be mentioned.
      String to = "xyz@gmail.com";

      // Sender's email ID needs to be mentioned
      String from = "abcd@gmail.com";

      // Assuming you are sending email from localhost
      String host = "localhost";

      // Get system properties
      Properties properties = System.getProperties();
    properties.put("mail.smtp.from", "mnop@gmail.com");

      // Setup …
Run Code Online (Sandbox Code Playgroud)

java jakarta-mail

15
推荐指数
2
解决办法
3万
查看次数

Java Mail,发送多个附件不起作用

我在互联网上看了很多条目而没有运气.

这是我的代码:

import java.io.IOException;
import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

public class MailTest
{

    public static void main(String[] args) throws AddressException, MessagingException, IOException
    {
        String host = "***";
        String from = "b";
        String to = "***";

        // Get system properties
        Properties props = System.getProperties();

        // Setup mail server
        props.put("mail.smtp.host", host);

        // Get session
        Session session = Session.getDefaultInstance(props, null);

        // Define message
        MimeMessage message = new MimeMessage(session); …
Run Code Online (Sandbox Code Playgroud)

java jakarta-mail

15
推荐指数
1
解决办法
2万
查看次数

阅读mime multipart的身体部分

好的,所以我使用.getcontent并收到javax.mail.internet.MimeMultipart@fd13b5等.

我知道我的代码中需要这样的东西,但我不知道到底需要什么.

if (p.isMimeType("text/plain")) {
    pr("This is plain text");
    pr("---------------------------");
    if (!showStructure && !saveAttachments)
    System.out.println((String)p.getContent());
} else if (p.isMimeType("multipart/*")) {
    pr("This is a Multipart");
    pr("---------------------------");
    Multipart mp = (Multipart)p.getContent();
    level++;
    int count = mp.getCount();
    for (int i = 0; i < count; i++)
    dumpPart(mp.getBodyPart(i));
    level--;
} else if (p.isMimeType("message/rfc822")) {
    pr("This is a Nested Message");
    pr("---------------------------");
    level++;
    dumpPart((Part)p.getContent());
    level--;
Run Code Online (Sandbox Code Playgroud)

目前我正在尝试将所有信息都放入astring中,然后在GUI上显示,然后我将它全部正常工作,显示身体内容显示为.javax.mail.internet.MimeMultipart@fd13b5.任何帮助将非常感激,因为我很困难.

package EmailTable;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.util.List;
import java.util.Properties;

import javax.activation.DataHandler;
import javax.mail.BodyPart;
import javax.mail.Folder;
import javax.mail.Message; …
Run Code Online (Sandbox Code Playgroud)

java mime multipart jakarta-mail

15
推荐指数
2
解决办法
6万
查看次数

JavaMail:保持IMAPFolder.idle()活着

我正在制作一个需要监控Gmail帐户以查找新邮件的程序,为了尽快获取它们,我正在使用JavaMail的空闲功能.这是我用来调用folder.idle()的线程的代码片段:

//Run method that waits for idle input. If an exception occurs, end the thread's life.
public void run() {

    IMAPFolder folder = null;

            try {
                folder = getFolder();
                while(true)
                {
                  //If connection has been lost, attempt to restore it
                  if (!folder.isOpen())
                      folder = getFolder();
                  //Wait until something happens in inbox
                  folder.idle(true);
                  //Notify controller of event
                  cont.inboxEventOccured();
                }
            }
            catch (Exception ex) {
                ex.printStackTrace();
            }
             System.out.println("MailIdleWaiter thread ending.");
}
Run Code Online (Sandbox Code Playgroud)

getFolder()方法基本上打开与IMAP服务器的连接并打开收件箱.

这有效一段时间,但在10分钟左右后它就会停止获取更新(不会抛出任何异常).

我正在寻找保持连接活着的建议.我是否需要第二个线程,其唯一的作用是睡眠并每10分钟更新一次idle()线程,还是有更简单/更好的方法?

提前致谢.

java imap jakarta-mail

14
推荐指数
4
解决办法
2万
查看次数

在JavaMail中使用message.getFrom()时,仅显示要显示的电子邮件地址

目前,当我使用JavaMail getFrom()将邮件分解为单独的部分时,它getFrom()还会显示发件人的名称.这可能是一个简单的问题,但是如何制作它只会返回电子邮件地址.对不起,如果这是一个简单的问题,但我似乎无法找到答案.

java jakarta-mail

14
推荐指数
1
解决办法
2万
查看次数

使用Office365发送javamail

我在配置SMTP设置以javax.mail (1.4.4)通过Office365 使用发送邮件时遇到问题,所以我想我会在这里为其他人发布这些属性.

smtp jakarta-mail office365

14
推荐指数
2
解决办法
4万
查看次数

通过JAVA中的gmail smtp服务器发送电子邮件

这段代码有什么问题?不知怎的,它进入了线路的无限循环 Transport.send(message);,没有错误信息,没有异常,只是可能无限循环(我不知道因为我不等待超过5-10分钟)

final String username = "<mail_name>";
final String password = "<password>";

Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.port", "465");

Session session = Session.getInstance(props,
        new javax.mail.Authenticator() {
            protected PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(username, password);
            }
        });

try {

    Message message = new MimeMessage(session);
    message.setFrom(new InternetAddress("<mail_from>@gmail.com"));
    message.setRecipients(Message.RecipientType.TO,
            InternetAddress.parse("<mail_to>@gmail.com"));
    message.setSubject("Test Subject");
    message.setText("Test");

    Transport.send(message);

    System.out.println("Done");

} catch (MessagingException e) {
    throw new RuntimeException(e);
}
Run Code Online (Sandbox Code Playgroud)

java smtp jakarta-mail

14
推荐指数
1
解决办法
8万
查看次数

无法找到协议提供程序:smtp

春天新手.我遇到以下异常:

2012-06-14 16:20:57,719 [http-8080-6] ERROR com.nimchip.lmu.data.service.impl.CoworkerServiceImpl - Error sending mail:
org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp. Failed messages: javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp
    at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:400) ~[spring-context-support-3.1.0.RELEASE.jar:3.1.0.RELEASE]
    at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:306) ~[spring-context-support-3.1.0.RELEASE.jar:3.1.0.RELEASE]
    at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:296) ~[spring-context-support-3.1.0.RELEASE.jar:3.1.0.RELEASE]
    at com.nimchip.lmu.data.service.impl.CoworkerServiceImpl.genUpdateNomination(CoworkerServiceImpl.java:224) ~[lmu-dataaccess-1.0.0.jar:na]
    at com.nimchip.lmu.controller.coworkerNom.CoworkerController.genUpdateNomination(CoworkerController.java:312)
Run Code Online (Sandbox Code Playgroud)

我有一个mail-config.xml,它在我的web.xml中注册.这里是:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host" value="10.30.137.190"/>
        <property name="port" value="25"/>
    </bean>

</beans>
Run Code Online (Sandbox Code Playgroud)

我应该能够匿名登录到指定的邮件服务器,因此不需要用户或密码.

我错过了什么?

java spring jakarta-mail

13
推荐指数
1
解决办法
2万
查看次数

JavaMail使用IMAP阅读最近未读的邮件

我需要从Gmail检索未读邮件.我正在使用Java Mail API.默认情况下,此API会检索从最旧到最新的邮件.但我需要先检索最近的邮件.可能吗?提前致谢.

java imap jakarta-mail

13
推荐指数
2
解决办法
2万
查看次数

标签 统计

jakarta-mail ×10

java ×9

imap ×2

smtp ×2

ejb-3.0 ×1

html ×1

java-ee ×1

mime ×1

multipart ×1

office365 ×1

spring ×1