Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2010
    Messaggi
    35

    Eliminazione mail tramite Client ?

    Salve a tutti,
    sono alle prese con l'implementazione di un client mail in java (utilizzando la libreria JavaMail)nel quale inserito un account di un determinato server di posta (esempio gmail) leggo la posta tramite protocollo imap.

    La mia domanda è la seguente :
    Si può fare in modo che qualora volessi eliminare una mail attraverso il mio software, essa venga eliminata anche sul server ?
    se si , come posso procedere?

    Inoltre la procedura descritta sopra è possibile effettuarla anche in pop3?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Sì, è possibile.
    Per farlo sono necessarie 3 cose:

    1) L'oggetto Folder va aperto in modalità READ_WRITE
    2) Il messaggio va marcato come DELETED
    3) L'oggetto Folder va chiuso specificando di eliminare i messaggi marcati.

    codice:
    Folder folder = store.getFolder("INBOX");
    folder.open( Folder.READ_WRITE );   // Apro la INBOX in modalità R/W
    ...
    Message m = ...;
    m.setFlag(Flag.DELETED, true);   // Marco il messaggio come "cancellato"
    ...
    folder.close( true );   // Chiudo la INBOX e dico al server di eliminare i messaggi marchiati
    Non cambia nulla con POP3.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Originariamente scritto da LeleFT:
    Non cambia nulla con POP3.
    anche io sto lavorando a qualcosa del genere ma provando a eliminare le mail di un server al quale si accede tramite protocollo POP (esempio yahoo) non credo sia supportata l'eliminazione,infatti provando tale procedura nelle condizioni sopra descritte si ottiene (l'ho testato personalmente):

    codice:
    javax.mail.MethodNotSupportedException: Expunge not supported
            at com.sun.mail.pop3.POP3Folder.expunge(POP3Folder.java:378)
    .................................................. ecc ecc....
    quindi penso che l'eliminazione sia consentita solo attraverso l'IMAP...o mi sbaglio?

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Ops,riguardo la risposta sopra pensavo avessi utilizzato il metodo expunge(),quindi ritiro quanto detto in precedenza e provo la procedura da te descritta

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da zipangulu
    Ops,riguardo la risposta sopra pensavo avessi utilizzato il metodo expunge(),quindi ritiro quanto detto in precedenza e provo la procedura da te descritta
    Sono abbastanza sicuro di questo perchè ho un server di scarico posta che ogni 2 minuti scarica in POP3 da 2 caselle (che ricevono dei FAX da un Fax Server)... sono 3 settimane che sta girando e la posta viene eliminata regolarmente.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Sisi effettivamente ho provato questa procedura e funziona.
    grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.