You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by beat glattfelder <be...@glattfelder.com> on 2010/02/26 17:07:20 UTC

Re: Read mail attachments from pop3 accounts and save them to file system

Hi Camel Riders

I am having the same issue with pop3. Debugging the code reveals
com.sun.mail.pop3.POP3Message.getContent is returning a String instead of a
Multipart object, so though strictly this is not a camel issue, I still
would like to know if someone remembers how this has been resolved?



FlyingFl wrote:
> 
> Hi everyone,
> i'm trying to  use Camel in thi scenario:
> polling a pop3 account and save every incoming message and every
> attachment on filesystem
> 
> ok polling the account, but how can I extract attachments?
> 
> Here is my processor:
> import javax.mail.internet.MimeMultipart;
> 
> import org.apache.camel.Exchange;
> import org.apache.camel.Message;
> import org.apache.camel.Processor;
> 
> public class MailReaderProcessor implements Processor {
> 
> 	public void process(final Exchange exchange) throws Exception {
> 		final Message m = exchange.getIn();
> 		final MimeMultipart multi = m.getBody(MimeMultipart.class);
> 		if (multi != null)
> 			System.out.println("count multipart: " + multi.getCount());
> 	}
> 
> }
> 
> 
> and here is my router:
> 
> public class Pop3ToFileRouteBuilder extends SpringRouteBuilder {
> 	private final String fileUrl =
> "file:///Users/francesco/Documents/projects/tools/apache-camel-1.3.0/out?append=false&noop=true";
> 
> 
> 	private final String imapUrl =
> "pop3://mymailserver?password=test&username=test&deleteProcessedMessages=false&processOnlyUnseenMessages=false&contentType=multipart/mixed&consumer.initialDelay=500&consumer.delay=5000";
> 
> 	Processor myProcessor = new MailReaderProcessor();
> 
> 	public void configure() throws Exception {
> 	
> from(imapUrl).process(myProcessor).convertBodyTo(String.class).to(fileUrl);
> 	}
> }
> 
> 
> The m.getBody statement return the body of the message as string... how
> can i read it as multipart message?
> 
> thanks!!!!
> 
> Francesco
> 
> 

-- 
View this message in context: http://old.nabble.com/Read-mail-attachments-from-pop3-accounts-and-save-them-to-file-system-tp20362680p27720099.html
Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.


Re: Read mail attachments from pop3 accounts and save them to file system

Posted by Claus Ibsen <cl...@gmail.com>.
On Fri, Feb 26, 2010 at 5:07 PM, beat glattfelder <be...@glattfelder.com> wrote:
>
> Hi Camel Riders
>
> I am having the same issue with pop3. Debugging the code reveals
> com.sun.mail.pop3.POP3Message.getContent is returning a String instead of a
> Multipart object, so though strictly this is not a camel issue, I still
> would like to know if someone remembers how this has been resolved?
>

Can you now switch to use imap? It often works much better than pop3.



>
>
> FlyingFl wrote:
>>
>> Hi everyone,
>> i'm trying to  use Camel in thi scenario:
>> polling a pop3 account and save every incoming message and every
>> attachment on filesystem
>>
>> ok polling the account, but how can I extract attachments?
>>
>> Here is my processor:
>> import javax.mail.internet.MimeMultipart;
>>
>> import org.apache.camel.Exchange;
>> import org.apache.camel.Message;
>> import org.apache.camel.Processor;
>>
>> public class MailReaderProcessor implements Processor {
>>
>>       public void process(final Exchange exchange) throws Exception {
>>               final Message m = exchange.getIn();
>>               final MimeMultipart multi = m.getBody(MimeMultipart.class);
>>               if (multi != null)
>>                       System.out.println("count multipart: " + multi.getCount());
>>       }
>>
>> }
>>
>>
>> and here is my router:
>>
>> public class Pop3ToFileRouteBuilder extends SpringRouteBuilder {
>>       private final String fileUrl =
>> "file:///Users/francesco/Documents/projects/tools/apache-camel-1.3.0/out?append=false&noop=true";
>>
>>
>>       private final String imapUrl =
>> "pop3://mymailserver?password=test&username=test&deleteProcessedMessages=false&processOnlyUnseenMessages=false&contentType=multipart/mixed&consumer.initialDelay=500&consumer.delay=5000";
>>
>>       Processor myProcessor = new MailReaderProcessor();
>>
>>       public void configure() throws Exception {
>>
>> from(imapUrl).process(myProcessor).convertBodyTo(String.class).to(fileUrl);
>>       }
>> }
>>
>>
>> The m.getBody statement return the body of the message as string... how
>> can i read it as multipart message?
>>
>> thanks!!!!
>>
>> Francesco
>>
>>
>
> --
> View this message in context: http://old.nabble.com/Read-mail-attachments-from-pop3-accounts-and-save-them-to-file-system-tp20362680p27720099.html
> Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.
>
>



-- 
Claus Ibsen
Apache Camel Committer

Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus