Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    33

    Settare messaggi come letti in javamail

    Salve a tutti,
    ho un problema a macare i messaggi come letti con la libreria javamail:

    in pratica utilizzola seguente classe:

    codice:
    public void setReadMsg(Integer idMsg) throws IOException, NoSuchProviderException, MessagingException { // Connect to the POP3 server Session session = Session.getDefaultInstance(props, null); Store store = session.getStore(provider); store.connect(host, username, password); // Open the folder Folder inbox = store.getFolder("INBOX"); if (inbox == null) { System.out.println("No INBOX"); System.exit(1); } inbox.open(Folder.READ_WRITE); // Get the messages from the server Message[] messages = inbox.getMessages(); messages[idMsg].setFlag(Flags.Flag.SEEN, true); messages[idMsg].saveChanges(); }
    il problema è che mi da l'errore
    POP3 messages are read-only

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    33
    Scusate avevo scritto mail il codice:
    codice:
    public void setReadMsg(Integer idMsg) throws IOException, NoSuchProviderException, MessagingException {
            // Connect to the POP3 server
            Session session = Session.getDefaultInstance(props, null);
            Store store = session.getStore(provider);
            store.connect(host, username, password);
    
            // Open the folder
            Folder inbox = store.getFolder("INBOX");
            if (inbox == null) {
                System.out.println("No INBOX");
                System.exit(1);
            }
            inbox.open(Folder.READ_WRITE);
    
            // Get the messages from the server
            Message[] messages = inbox.getMessages();
            messages[idMsg].setFlag(Flags.Flag.SEEN, true);
            messages[idMsg].saveChanges();
        }

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    33
    il fatto è che continua a darmi l'errore:

    javax.mail.IllegalWriteException: POP3 messages are read-only

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da attila79
    il fatto è che continua a darmi l'errore:

    javax.mail.IllegalWriteException: POP3 messages are read-only
    Ha ragione lui: i messaggi di posta, aperti col protocollo POP3, sono di sola lettura (l'unica "scrittura" ammessa è la cancellazione).
    I client di posta configurati in POP3 hanno solo due modalità di funzionamento:

    1) Scarico della posta con eliminazione dal server (non necessita di alcun meccanismo di marcatura della posta letta)

    2) Scarico della posta con mentenimento di una copia delle mail sul server (necessitano di un meccanismo di marcatura)

    L'unico modo che hai per poter "marcare" i messaggi come già letti (ed è ciò che fanno i client di posta configurati in POP3, con mantenimento della copia su server) è mantenere da qualche parte (generalmente un file) l'indice dell'ultimo messaggio letto, in modo da scaricare solo i messaggi con ID maggiore a quello memorizzato.


    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

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    33
    Grazie....
    temevo fosse qualcosa del genere
    .

    Faccio come hai detto tu

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.