Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

multipart/report - Missing Start Boundary - MultiPart.getContent()

843830Dec 9 2005 — edited Feb 8 2010
I am writing to you in regard to an issue that I have been facing recently, and I wanted to see if the JavaMail developers / community could provide any answers.

Does JavaMail support the multipart/report MIME specification (RFC 1892)?

The reason I ask, is that I have seen a strong correlation between errors in JavaMail and this content....

I am getting Missing Start Boundary exceptions when I execute this code on a message that has this Mime Type in it, (multipart/report)

mp = (Multipart)part.getContent();
count = mp.getCount(); // THIS IS WHAT THROWS THE ERROR

An example of this message header, would be
X-Atlas-MailScanner-From: abc@123.com
Content-Type: multipart/report; report-type=delivery-status;
boundary="==IFJRGLKFGIR5607UHRUHIHD"

** NOTE HOW BOUNDARY IS SPECIFIED UNLIKE THE OTHER SECTIONS WHICH LEADS ME TO BELIEVE THE MISSING START BOUNDARY EXCEPTION **

--==IFJRGLKFGIR5607UHRUHIHD
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: base64
......
--==IFJRGLKFGIR5607UHRUHIHD
Content-Type: message/rfc822

I have seen older posts that talk about other people's problem regarding this Exception; however, have not seen an abstract way for circumventing the issue.

Any insight/future development intentions/experience in dealing with this issue would be greatly appreciated.

RR

Comments

843830
Not sure about this that i will tell you, but have u tried to do this in a loop??

.........
Message message[] = folder.getMessages();

for (int i=0, n=message.length; i<n; i++) {
Multipart mp = (Multipart)message.getContent();
.........


...just a thought, i am trying this also at this time
843830
...ah something else also...

i just add "activation.jar" in the libraries and it is working for me (just to get the ConentType from an e-mail)

You can find it in tomcat\common\lib, if u have apache tomcat.
Thats all until now, i will keep trying
843834
I'm getting the same exception on several "bounce" messages I try to access with JavaMail. I believe that some of them are flat-out wrong in their MIME encoding, as there truly is no start boundary. However, some appear to be OK and causing JavaMail to give an exception. Should this be logged as a bug?

Here's an example similar to yours (I didn't include all the received headers and several addresses are munged):

<blockquote><i>{noformat}Date: Sat, 19 Apr 2008 06:57:46 -0400
From: owner-LISTSERV@LISTS.NETSPACE.ORG
Subject: Undelivered mail
To: x
Message-ID: <x@LISTS.NETSPACE.ORG>
MIME-Version: 1.0
Content-Type: multipart/report; report-type=delivery-status;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;boundary="--TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF"

--TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF<br />

--> Error description:
Error-For: x@LISTS.NETSPACE.ORG
Error-Code: 5.1.1
Error-Text: No such list.

Error-End: One error reported.

--TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF<br />
Content-Type: message/delivery-status

Reporting-MTA: dns; LISTS.NETSPACE.ORG

Final-Recipient: RFC822; x@LISTS.NETSPACE.ORG
Action: failed
Status: 5.1.1 (No such list)

--TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF<br />
Content-Type: message/rfc822

Return-Path: <x>
X-Original-To: x@lists.netspace.org
Received: from ppp91-122-170-233.pppoe.avangarddsl.ru (ppp91-122-170-233.pppoe.avangarddsl.ru [91.122.170.233]) by lists.netspace.org (Postfix) with ESMTP id 538527A53A for <x@lists.netspace.org>; Sat, 19 Apr 2008 06:57:45 -0400 (EDT)
Received: from [91.122.170.233] by mx1.bne.server-mail.com; Sat, 19 Apr 2008 14:06:15 +0300
Message-ID: <01c8a226$87bfa580$e9aa7a5b@retentioncal53>
From: "x" <x>
To: <x@lists.netspace.org>
Subject: The extracts of VPXL are Pueraria tuberose 75 mg, Mucuna pruriens 75 mg, Asteracantha longifolia 75 mg.
Date: Sat, 19 Apr 2008 14:06:15 +0300
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2741.2600
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2741.2600

TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF{noformat}
</i></blockquote>
Bill Shannon-Oracle
The message is improperly constructed.

Note that the boundary parameter is "--TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF",
which should appear in the message as a line that looks like:

----TKFLZMMSbcaBDNCJdCBMaXGSRbVIAF

As you can see, they incorrectly included the leading "--" in the boundary parameter value.
You should report this bug to the owner of the software or host that created this message.

As a workaround, create a copy of the message (using the MimeMessage copy constructor)
so that you can modify it, change the Content-Type header to remove the boundary parameter,
and set the System property "mail.mime.multipart.ignoremissingboundaryparameter" to "true".

(I should probably add another property to make it easy to ignore bogus boundary parameters.)
843834
I have identical problem. and possible to remove the boundary?
Bill Shannon-Oracle
As with the previous case, please report this bug to the owner of the software
that created this broken message.

If you're using JavaMail 1.4.3, there's a property that will cause JavaMail to
ignore the (bogus) boundary parameter in the message, and try to guess
what the boundary really is. See the javadocs for the javax.mail.internet package.
843834
ok thank you. I use JavaMail 1.4.3 as the command to ignore the boundary? thanks and sorry for my English amateur.
Bill Shannon-Oracle
Yes, use JavaMail 1.4.3.

Read the javadocs to find out which property to set.
1 - 8
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Mar 8 2010
Added on Dec 9 2005
8 comments
877 views