`
WANG_2001
  • 浏览: 8561 次
  • 性别: Icon_minigender_1
  • 来自: 襄樊
社区版块
存档分类
最新评论

用javamail 收邮件出现:javax.mail.internet.ParseException

阅读更多
请大侠们给点解决方法。。。。
一下是取得邮件内容的代码
public static String getMailContent(Part part){
      StringBuffer bodytext = new StringBuffer();
      try{
String contenttype = part.getContentType();
int nameindex = contenttype.indexOf("name");
boolean conname =false;
if(nameindex != -1) conname=true;
System.out.println("CONTENTTYPE: "+contenttype);
if(part.isMimeType("text/plain") && !conname){
    bodytext.append((String)part.getContent());
}else if(part.isMimeType("text/html") && !conname){
    bodytext.append((String)part.getContent());
}else if(contenttype.startsWith("multipart/alternative")){
   Multipart multipart = (Multipart)part.getContent();
    String p =getMailContent((Part)multipart.getBodyPart(1));
    bodytext.append(p);
}
}catch(Exception ex){
    ex.printStackTrace();
}
    return bodytext.toString();
}
在解析带附件的邮件是出现的异常。。。

javax.mail.internet.ParseException
        at javax.mail.internet.ParameterList.<init>(ParameterList.java:61)
        at javax.mail.internet.ContentType.<init>(ContentType.java:83)
        at javax.mail.internet.MimeMultipart.parse(MimeMultipart.java:269)
        at javax.mail.internet.MimeMultipart.getBodyPart(MimeMultipart.java:172)
        at Mail.MailManager.getMailContent(MailManager.java:303)




期待中。。。。。。。。
分享到:
评论
3 楼 Emy 2008-05-12  
我也在做javamail可以共同讨论下··
2 楼 WANG_2001 2008-03-19  
但是,我在main() 函数调用该方法,无任异常,
读取邮件的内容正常
在web 容器(tomcat)中调用是,有附件的邮件,会出现此异常。。。
1 楼 bo_83 2008-03-19  
考虑的不周全吧 试试按照这样的思路对邮件解析

if (!part.isMimeType("text/rfc822-headers") && part.isMimeType("text/*")){
}
else if (part.isMimeType("multipart/*")){
这里递归
}
else if (part.isMimeType("message/rfc822")){
这里也递归
}
else{
}

相关推荐

    javaMail文档

    ParseException Part PasswordAuthentication POP3Folder POP3Message POP3SSLStore POP3Store PreencodedMimeBodyPart Provider Provider.Type Quota Quota.Resource QuotaAwareStore ...

    javamail依赖的包.

    2. **javax.mail.internet**:这个模块包含了处理Internet邮件地址和MIME消息的类,如`InternetAddress`用于解析和构造邮件地址,`MimeMessage`则用于创建符合MIME标准的邮件。 3. **activation.jar**:也称为...

    java 邮件 mail 源码 事例 demo

    首先,`mail.jar`是JavaMail的核心库,它包含了处理邮件所需的基本类和接口,如`javax.mail.Session`、`javax.mail.Transport`和`javax.mail.Message`等。`activation.jar`则是JavaBeans Activation Framework,它...

    JavaMail应用实例说明:简单(HTML)邮件的发送 javaMail基础教程下载

    首先,我们需要导入 JavaMail 的相关库,例如 javax.mail 和 javax.mail.internet 包。这些库提供了创建和发送邮件所需的类和接口。 下面是一个简单的 JavaMail HTML 邮件发送示例: ```java import javax.mail.*;...

    用javaMail发送邮件

    在JavaMail中,我们主要利用 javax.mail 和 javax.mail.activation 这两个包中的类和接口来实现邮件的发送功能。这两个包在给定的压缩包文件中已经包含,即 mail.jar 和 activation.jar。 首先,我们来详细了解一下...

    javaMail发邮件

    此外,JavaMail 提供了对 POP3(邮局协议)和 IMAP(因特网消息访问协议)的支持,用于接收邮件。你可以创建 `Store` 对象,连接邮件服务器,然后使用 `Folder` 对象来读取、删除或管理邮件。 总的来说,JavaMail ...

    Javamail实现邮件的发送

    首先,`javax.mail-1.5.1.jar` 是 JavaMail 的核心库文件,包含了处理邮件操作所需的类和接口。这个库提供了包括创建、发送、接收邮件在内的多种功能,是实现邮件发送功能的基础。 `SendMailUtil.java` 文件很可能...

    javamail使用的两个jar包

    在JavaMail中,`javax.mail` 和 `javax.mail.internet` 包提供了核心功能,包括创建、发送邮件、处理附件、解析邮件等。 在JavaMail的使用过程中,通常需要导入两个重要的JAR文件: 1. `mail.jar`: 这是JavaMail的...

    java邮件(mail.jar)的一个测试程序

    使用JavaMail发送邮件时,首先需要导入`javax.mail`和`javax.mail.internet`等相关包。以下是一段简单的示例代码,展示了如何使用JavaMail发送一封简单的文本邮件: ```java import javax.mail.*; import javax....

    javamail发送邮件

    JavaMail 是一个开源的 Java 库,用于处理电子邮件的发送和接收。它提供了与各种邮件服务器(如 SMTP、POP3 和 IMAP)交互的接口,使得开发者能够在 Java 应用程序中轻松地实现邮件功能。在JavaMail中,主要通过`...

    javaMail 发邮件

    JavaMail 是一个强大的开源库,专门用于在Java应用程序中发送和接收电子邮件。它提供了丰富的API,使得开发者可以方便地处理SMTP、POP3和IMAP等邮件协议。在JavaMail中,我们可以实现各种复杂的邮件功能,如添加附件...

    java发邮件依赖jar包.zip

    在这个名为“java发邮件依赖jar包.zip”的压缩文件中,包含了两个关键的JAR文件:mail.jar和activation.jar,它们是JavaMail API的核心组成部分。 JavaMail API 是Java平台上的一个开源库,用于处理电子邮件相关的...

    javamail发送邮件所需包

    在使用JavaMail进行邮件通信时,有两个核心的JAR文件是必不可少的:`mail.jar`和`activation.jar`。 `mail.jar` 包含了JavaMail的主要类和接口,它们提供了创建、发送、读取和管理电子邮件的功能。例如,`javax....

    javamail架包、例子

    这个资源包包含了 JavaMail 开发所需的所有关键组件,包括 javax.mail 和 javax.mail.internet 包,这两个包提供了处理邮件的基本类和接口。此外,可能还包含了一些额外的依赖库,如activation.jar,用于支持MIME...

    如何用javamail定时发送邮件

    JavaMail 是一个强大的开源库,用于在 Java 应用程序中发送和接收电子邮件。要实现定时发送邮件,我们可以结合 JavaMail 和 Java 计时器框架(如文中提到的 Java Timer)。以下是一个详细的步骤来实现这个功能: 1....

    java发送邮件必备的jar包(mail.jar和activation.jar)

    例如,你可以使用`javax.mail.Session`来设置邮件服务器的配置,`javax.mail.Transport`来发送邮件,`javax.mail.internet.MimeMessage`来构建邮件内容。 其次,`activation.jar`是JavaBeans Activation Framework ...

    javamail.jar和activation.jar

    JavaMail和Activation是Java开发中用于处理电子邮件的两个重要库,它们主要负责邮件的发送、接收以及MIME类型的处理。这两个库通常一起使用,因为JavaMail依赖于Activation库来识别和处理不同类型的邮件附件。 ...

    简单javamail的实现(HelloWorld)

    JavaMail API 提供了广泛的类和接口,用于处理邮件服务器的各种操作,包括SMTP(Simple Mail Transfer Protocol)用于发送邮件,POP3(Post Office Protocol version 3)或IMAP(Internet Message Access Protocol)...

    javaMail 发送邮件

    `javax.mail`和`javax.mail.internet`是两个主要的包,包含了许多类和接口,如`Session`、`Message`、`Transport`、`MimeMessage`等。`Session`是整个邮件会话的起点,负责管理配置信息,如SMTP服务器地址、端口号、...

    javaMail基本应用

    主要包括`javax.mail`和`javax.mail.internet`两个包,前者定义了邮件会话、存储、消息等基础接口,后者则包含了互联网相关的邮件格式和地址处理。 2. **Provider**: Provider是JavaMail API的具体实现,它对应于...

Global site tag (gtag.js) - Google Analytics