2010-07-27 11 views
1

J'ai un bloc de code pour ouvrir une URL donnée dans le navigateur par défaut. J'ai un problème d'ouverture d'URL avec des paramètres dans IE, Lorsque le navigateur par défaut est FireFox ça fonctionne bien, mais il semble que IE supprime ces paramètres !!! Toute autre façon de résoudre ce problème?Ouverture d'une URL avec des paramètres de requête dans IE à l'aide de la classe Java Runtime

code J'utilise est:

Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler \"" + url + "\""); 

J'ai problème avec les URL comme "... test.html param1 = val1 & param2 = val2?" Dans IE

Merci,

Rakesh.A

Répondre

0

Merci pour les suggestions, je l'ai résolu d'une manière différente. J'ai créé un fichier JavaScript avec les valeurs de paramètres et utilisé dans le fichier HTML, peut-être pas une solution propre, mais a travaillé pour moi :)

2

Si vous utilisez Java 1.6, procédez comme suit à la place:

Desktop.getDesktop().browse(new URI(url)) 

Ceci (java.awt.Desktop#browse(..)) est une manière indépendante de la plate-forme d'ouvrir le navigateur par défaut.

+1

en fait, si vous n'utilisez pas 1.6, commencez à l'utiliser. Il a été sorti pendant 4 ans ou plus. :-) oh, btw, +1 –

+0

J'ai essayé d'utiliser Desktop sans succès, autant que je peux comprendre son IE qui supprime [ou n'accepte pas] les paramètres! – iamrakesh

+0

@iamrakesh dont IE version – Bozho

0

Vous avez probablement besoin d'échappement/encodage url d'une certaine manière. Le caractère & a une signification particulière pour l'interpréteur de commandes. Ou faites ce que les autres disent et n'utilisez pas rundll32 pour cette tâche subalterne. Comment avez-vous même pensé à essayer de le faire de cette façon? Ce n'est pas un bon moyen.

+0

Echapper n'a pas fonctionné, je voulais utiliser JDK5 c'est pourquoi je n'ai pas opté pour Desktop classe! – iamrakesh