You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Davanum Srinivas (JIRA)" <ji...@apache.org> on 2008/04/08 12:31:24 UTC

[jira] Updated: (GERONIMO-3953) ArrayIndexOutOfBoundsException reading MimeMultipart from a file with multiple attachments.

     [ https://issues.apache.org/jira/browse/GERONIMO-3953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Davanum Srinivas updated GERONIMO-3953:
---------------------------------------

    Attachment: wmtom.bin

Here's the file as promised.

-- dims

> ArrayIndexOutOfBoundsException reading MimeMultipart from a file with multiple attachments.
> -------------------------------------------------------------------------------------------
>
>                 Key: GERONIMO-3953
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3953
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: mail
>            Reporter: Davanum Srinivas
>         Attachments: wmtom.bin
>
>
> Here's the stack trace :
> ======================================================================
> java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
> 	at java.util.Vector.get(Vector.java:710)
> 	at javax.mail.Multipart.getBodyPart(Multipart.java:93)
> 	at javax.mail.internet.MimeMultipart.getBodyPart(MimeMultipart.java:110)
> 	at javax.mail.internet.MimeMultipartTest.testMIMEWriting(MimeMultipartTest.java:107)
> ======================================================================
> Here's the code snippet to recreate the issue :
> ==============================================
> C:\Apache\geronimo-javamail_1.4_spec>svn diff
> Index: src/test/java/javax/mail/internet/MimeMultipartTest.java
> ===================================================================
> --- src/test/java/javax/mail/internet/MimeMultipartTest.java    (revision 645758)
> +++ src/test/java/javax/mail/internet/MimeMultipartTest.java    (working copy)
> @@ -26,6 +26,7 @@
>  import java.io.ByteArrayInputStream;
>  import java.io.ByteArrayOutputStream;
>  import java.io.File;
> +import java.io.FileInputStream;
>  import java.util.Properties;
>  import javax.mail.BodyPart;
>  import javax.mail.MessagingException;
> @@ -95,6 +96,23 @@
>          assertEquals("This is a preamble\r\n", ((MimeMultipart)newMessage.getContent()).getPreamble());
>      }
> +    public void testMIMEWriting() throws IOException, MessagingException {
> +        FileInputStream inStream = new FileInputStream("src/test/resources/wmtom.bin");
> +        Properties props = new Properties();
> +        javax.mail.Session session = javax.mail.Session
> +                .getInstance(props, null);
> +        MimeMessage mimeMessage = new MimeMessage(session, inStream);
> +        DataHandler dh = mimeMessage.getDataHandler();
> +        MimeMultipart multiPart = new MimeMultipart(dh.getDataSource());
> +        MimeBodyPart mimeBodyPart0 = (MimeBodyPart) multiPart.getBodyPart(0);
> +        Object object0 = mimeBodyPart0.getContent();
> +        assertNotNull(object0);
> +        MimeBodyPart mimeBodyPart1 = (MimeBodyPart) multiPart.getBodyPart(1);
> +        Object object1 = mimeBodyPart1.getContent();
> +        assertNotNull(object1);
> +        assertEquals(multiPart.getCount(), 2);
> +    }
> +
>      protected void writeToSetUp() throws Exception {
>          defaultMap = CommandMap.getDefaultCommandMap();
>          MailcapCommandMap myMap = new MailcapCommandMap();
> i'll upload wmtom.bin as an attachment

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.