Appli bloqué avec Desktop + Firewall

Résolu
3615jenveux Messages postés 41 Date d'inscription vendredi 6 février 2004 Statut Membre Dernière intervention 11 août 2008 - 28 janv. 2007 à 18:36
3615jenveux Messages postés 41 Date d'inscription vendredi 6 février 2004 Statut Membre Dernière intervention 11 août 2008 - 30 janv. 2007 à 03:17
Bonjour à tous,

Je développe une appli sous Java SE 6.0
Parmis les nouveauté de java 6, figure la classe Desktop permettant entre autre, d'accéder à une page web via le navigateur par défaut du système.
Cela m'est utile pour proposer de visiter un site web dans le menu de l'appli.

Et cela fonctionne à merveille. SAUF : quand je refuse que javaw.exe communique avec Internet (c'est à dire que lorsque mon Firewall me demande si il doit ou non autoriser la communication, je clic NON). L'application alors se fige complétement et indéfiniment, et il faut carrément tuer le process. Aucune Exception n'est levé et après lecture des spécifications de Sun, je n'est rien trouvé. La demo qu'il ont mis en téléchargement produit d'ailleurs le même effet : [url]http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/desktop_api//url

Quelqu'un aurait-il trouvé une solution pour éviter ce plantage ?

Mon os est Windows Xp, service pack 2.

Je précise que :
Desktop.isDesktopSupported() me renvoie TRUE
et
desktop.isSupported(Desktop.Action.BROWSE) me renvoie TRUE

Voici le code:

            URI uri = null;
            try {
                uri = new URI("http://java.sun.com/");
                Desktop desktop = Desktop.getDesktop();
                if (desktop != null & uri != null) {
                    try {
                        desktop.browse(uri);
                    }
                    catch (UnsupportedOperationException e1) {
                        e1.printStackTrace();
                    }
                    catch (IOException e1) {
                        e1.printStackTrace();
                    }
                    catch (SecurityException e1) {
                        e1.printStackTrace();
                    }
                    catch (IllegalArgumentException e1) {
                        e1.printStackTrace();
                    }
                }
            }
            catch (URISyntaxException e2) {
                e2.printStackTrace();
            }

2 réponses

3615jenveux Messages postés 41 Date d'inscription vendredi 6 février 2004 Statut Membre Dernière intervention 11 août 2008
30 janv. 2007 à 03:17
non, ça n'est pas "normal" !
C'est un bug de l'API ; je n'avais pas fait attention mais la version 6 est en bêta, et le bug est répertorié par SUN qui je suppose règlera le problème dans les mois à venir.
3
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
29 janv. 2007 à 15:18
C'est peut etre normale que ca plante si tu veux acceder a internet et que tu interdit java d'aller sur le net
++
0
Rejoignez-nous