Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 30 su 30
  1. #21
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Stai continuando a lanciare la UnsupportedEncodingException
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  2. #22
    Mi spiace ma Eclipse non me la lascia togliere! Se la rimuovo non mi fa compilare...
    Più pratica in futuro...

  3. #23
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Mi spiace ma Eclipse non me la lascia togliere! Se la rimuovo non mi fa compilare...
    codice:
    public static String OttieniMD5(String input) throws NoSuchAlgorithmException {
        ....
        byte[] messageDigest;
        ....
        try {
            messageDigest = md.digest(input.getBytes("UTF-8"));
        } catch (UnsupportedEncodingException e) {
            throw new Error("Grave errore, UTF-8 non riconosciuto!");
        }
        .....
    }
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #24
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Mi spiace ma Eclipse non me la lascia togliere! Se la rimuovo non mi fa compilare...
    Nessuno ti ha detto ti togliere l'eccezione e basta ma di toglierla dal throws, catturarla e rilanciarla come una unchecked exception (o error)
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #25
    Però se voglio usare JOptionPane dato che sto lavorando su una GUI grafica cosa devo scrivere al posto di Error()?

    Questo non funziona...

    JOptionPane.showMessageDialog(null, errore,
    titolo_errore, JOptionPane.ERROR_MESSAGE);

    scusate sono proprio uno zuccone...
    Più pratica in futuro...

  6. #26
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Però se voglio usare JOptionPane dato che sto lavorando su una GUI grafica cosa devo scrivere al posto di Error()?
    Cosa vuol dire?

    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Questo non funziona...

    JOptionPane.showMessageDialog(null, errore,
    titolo_errore, JOptionPane.ERROR_MESSAGE);
    Per la milionesima volta: "Non funziona" non vuol dire nulla!
    Non ti compila? Non esegue? Che errore ti da?
    Dov'è quel JOptionPane?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #27
    Eclipse non mi compila il programma. Io sto realizzando dei software con interfaccia grafica pertanto l'errore deve essere sempre visualizzato a mezzo di un JOptionPane che solitamente metto dentro il catch fatto seguire da un return che mi blocca tutto.
    Più pratica in futuro...

  8. #28
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Non compila... ok... il messaggio del compilatore?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  9. #29
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Però se voglio usare JOptionPane dato che sto lavorando su una GUI grafica cosa devo scrivere al posto di Error()?
    Cioè nel metodo OttieniMD5 invece di avere:

    throw new Error("Grave errore, UTF-8 non riconosciuto!");

    vorresti mettere un qualche tipo di dialog che dia un avvertimento all'utente?

    La risposta semplice che dò subito è: non dovresti.
    Questo metodo OttieniMD5 è molto di "basso livello", fa un lavoro principalmente computazionale che di per sé non ha niente a che fare con qualunque tipo di interazione con l'utente. Quindi in OttieniMD5 non dovresti fare nulla di diretto verso l'utente. Se avessi una libreria di logging, puoi fare un log di errore, se non ne usi una al limite puoi fare un classico System.err.println ma in ogni caso dovresti lanciare fuori o una eccezione unchecked o un Error (gli Error sono "tecnicamente" unchecked ma hanno un altro significato più "grave").

    Un metodo come OttieniMD5 sarebbe appropriato metterlo in una classe apposita di "utilità". Ma anche se lo metti dentro una classe che si occupa della interfaccia utente, è comunque buona cosa che OttieniMD5 non faccia nulla direttamente verso l'utente.
    Dove invochi OttieniMD5, se lì c'è maggior "coscienza" della interfaccia utente, allora potresti visualizzare una dialog di errore.

    Cerca di capire e di tenere presente che spesso il problema non è tanto tecnico ma concettuale. Certe cose non vanno fatte non perchè non sono tecnicamente possibili ma perché ... non dovrebbero essere fatte in quel modo o in quel luogo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #30
    1) Se non si può fare non lo faccio però ti spiego il mio ragionamento e poi mi dici cosa ne pensi. Quando calcolo il codice hash di "gianni" con il metodo OttieniMD5("gianni") se qualcosa andasse storto mi aspetto che l'eccezione venga intercettata e informi l'utente del problema e che il programma si blocchi ovvero non vada oltre altrimenti l'utente non sa perché sulla GUI il codice non viene scritto.

    2) Detto questo vorrei sapere in quali casi si ricade nella UnsupportedEncodingException.

    3) Ho corretto il codice che ora funziona. In pratica titolo_err_md5 doveva essere statica.

    codice:
    public static String OttieniMD5Minuscolo(String input)
                throws NoSuchAlgorithmException {
            MessageDigest md = MessageDigest.getInstance("MD5");
            byte[] messageDigest = null;
            try {
                messageDigest = md.digest(input.getBytes("UTF-8"));
            } catch (UnsupportedEncodingException e) {
                JOptionPane.showMessageDialog(null, titolo_err_md5, corpo_err_md5,
                        JOptionPane.ERROR_MESSAGE);
            }
            StringBuilder buf = new StringBuilder(messageDigest.length * 2);
            for (byte b : messageDigest) {
                buf.append(String.format("%02x", b));
            }
            return buf.toString();
        }
    Più pratica in futuro...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.