Olá,
Preciso fazer um processo simples de encontrar algumas mensagens no INBOX e movê-las para determinado diretório, vejam:
...
private boolean connect(AccountMail account) throws NineconException {
boolean conectado = false;
Properties pp = System.getProperties();
logger.debug("Conectando a conta de e-mail.");
try{
pp.put("mail.pop3.host", account.getHost());
Authenticator auth = new PopAuthentication(account.getUsername(), account.getPassword());
session = Session.getDefaultInstance(pp, auth);
store = session.getStore("pop3");
store.connect(account.getHost(), account.getUsername(), account.getPassword());
folder = store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
conectado = true;
}catch (NoSuchProviderException e){
conectado = false;
throw new NineconException(e);
}catch (MessagingException e){
conectado = false;
throw new NineconException(e);
}
return conectado;
}
...
for( Message message : ms ){
//
try{
if( BugValidation.isValidAbrilBug(message.getSubject()) ){
/* ocultado */
//
if( listMsg!=null && listMsg.size()>0 ){
Message[] moved = new Message[listMsg.size()];
listMsg.toArray( moved );
Folder folder = null;
connect(am, folder, "OPEN_BUG", false);
folder.appendMessages( moved );
folder.close(true);
}//
}
}catch (MessagingException e){
throw new NineconException(e);
}catch (IOException e){
throw new NineconException(e);
}
}// for end
logger.debug("Total Processadas : " + listMsg.size() );
}
E retorna a seguinte mensagem de erro:
2009-03-19 16:44:22,260 [main] ERROR java.lang.Class - bug.ninecon.exception.NineconException: javax.mail.FolderNotFoundException:
folder is not INBOX
Pelo que eu estive lendo na internet, a utilização de POP3 não permite utilizar outro diretório se não o INBOX, correta está informação? Como eu posso então fazer esta movimentação de mensagens entre diretórios?
Obrigado.