classpathx-javamail
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Classpathx-javamail] Folder.copyMessages


From: remi__
Subject: Re: [Classpathx-javamail] Folder.copyMessages
Date: Thu, 31 May 2007 05:09:14 -0700 (PDT)

I get that:

java.lang.NullPointerException
        at
gnu.mail.providers.imap.IMAPMultipartDataSource.<init>(IMAPMultipartDataSource.java:60)
        at 
gnu.mail.providers.imap.IMAPMessage.getDataHandler(IMAPMessage.java:619)
        at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1618)
        at gnu.mail.providers.imap.IMAPMessage.writeTo(IMAPMessage.java:859)
        at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1553)
        at gnu.mail.providers.imap.IMAPMessage.writeTo(IMAPMessage.java:845)
        at 
gnu.mail.providers.imap.IMAPFolder.appendMessages(IMAPFolder.java:712)
        at javax.mail.Folder.copyMessages(Folder.java:669)
        at TestDeplacementMailGNU112.moveMail(TestDeplacementMailGNU112.java:63)
        at TestDeplacementMailGNU112.test(TestDeplacementMailGNU112.java:47)
        at TestDeplacementMailGNU112.main(TestDeplacementMailGNU112.java:31)

copyMessage calls appendsMessage but some Folder opening and closing actions
are done too before and after the call ...



Chris Burdess-2 wrote:
> 
> remi__ wrote:
>> I am writing some code to move a mail from a folder to another. The  
>> idea is
>> to copy it to another folder and then delete the orignal.
>>
>> Is that normal that this code:
>>
>> private void moveMail(Message message){
>>      try {
>>              Folder dossierSrc = message.getFolder();
>>              Store store = dossierSrc.getStore();
>>              Folder dossierDest = store.getFolder("processedMails");
>>              if (dossierDest != null && dossierDest.exists()) {
>>                      dossierSrc.copyMessages(new Message[]{message}, 
>> dossierDest);
>>                      message.setFlag(Flags.Flag.DELETED,true);
>>              }
>>      } catch (MessagingException e) {
>>                      e.printStackTrace();
>>      }
>> }
>>
>> leads to a NPE:
>>
>> java.lang.NullPointerException
>>      at
>> gnu.mail.providers.imap.IMAPMultipartDataSource.getInputStream 
>> (IMAPMultipartDataSource.java:102)
>>      at javax.activation.DataHandler.writeTo(DataHandler.java:215)
>>      at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1618)
>>      at gnu.mail.providers.imap.IMAPMessage.writeTo(IMAPMessage.java:859)
>>      at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1553)
>>      at gnu.mail.providers.imap.IMAPMessage.writeTo(IMAPMessage.java:845)
>>      at gnu.mail.providers.imap.IMAPFolder.appendMessages 
>> (IMAPFolder.java:712)
>>      at javax.mail.Folder.copyMessages(Folder.java:669)
>>      at TestDeplacementMailGNU112.moveMail 
>> (TestDeplacementMailGNU112.java:63)
>>      at TestDeplacementMailGNU112.test(TestDeplacementMailGNU112.java:47)
>>      at TestDeplacementMailGNU112.main(TestDeplacementMailGNU112.java:31)
>>
>>
>> Whereas that piece of code works fine:
>>
>> private void moveMail(Message message){
>>      try {
>>              Folder dossierSrc = message.getFolder();
>>              Store store = dossierSrc.getStore();
>>              Folder dossierDest = store.getFolder("processedMails");
>>              if (dossierDest != null && dossierDest.exists()) {
>>                      dossierDest.appendMessages(new Message[]{message});
>>                      message.setFlag(Flags.Flag.DELETED,true);
>>              }
>>      } catch (MessagingException e) {
>>                      e.printStackTrace();
>>      }
>> }
> 
> That sounds very strange, because copyMessages simply calls  
> appendMessages internally.
> 
> Could you try with CVS HEAD? I've added a null pointer check at a  
> critical point.
> 
> 
> _______________________________________________
> Classpathx-javamail mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/classpathx-javamail
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Folder.copyMessages-tf3845701.html#a10892607
Sent from the classpathx-javamail mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]