Forum Linux.général Plugin Java : changer le nom du système d'exploitation, à l'instar de l'User Agent sous Firefox

Posté par .
2
8
mai
2011

Salut à tous,

Je cherche à contourner un stupide contrôle dans un applet java que je ne maîtrise pas. Cet applet contrôle non seulement le navigateur (==> IE uniquement), ce que j'ai réussi à contourner en utilisant l'extension User Agent Switcher, mais cet applet contrôle également visiblement le système d'exploitation... et oui, quand on est con, on est con ! Ou comment empêcher Java d'être portable.

Bref, après quelques recherches, je suis tombé sur une possibilité, l'option -D dans la ligne de commande Java, pour modifier une propriété système (et donc le fameux "os.name"). Néanmoins, c'est là que je bloque : comment passer une telle option à l'applet Java (Java 6 de SUN) de mon navigateur (Firefox 4) ?

Merci d'avance de vos tuyaux.

  • # En ligne de commande

    Posté par (page perso) . Évalué à 4.

    Il doit être possible de récupérer l'URL de l'applet dans la page web, de le télécharger et de l'executer en console en passant les argument que tu souhaite à la machine virtuelle.

    « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: En ligne de commande

      Posté par . Évalué à 1.

      Merci pour l'idée !
      Malheureusement, après avoir téléchargé le lien, il semble qu'il faille d'autres classes qui sont dans d'autres fichiers... les chemins sont relatifs, du coup ça ne fonctionne pas en local.

      Y'a-t-il moyen de configurer le plugin Java (IcedTea avec Openjdk par exemple) pour qu'il passe -Dos.name="Windows XP" en paramètre par exemple ?

      • [^] # Re: En ligne de commande

        Posté par (page perso) . Évalué à 4.

        Il n'y a pas moyen de passer l'URL à la jvm? Ça résoudrait le problème des chemins relatifs.

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

        • [^] # Re: En ligne de commande

          Posté par (page perso) . Évalué à 3.

          Sinon, il faut peut-être essayer d'ajouter des arguments en les ajoutant à la ligne qui renseigne l'emplacement de la jvm dans le about:config.

          « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

          • [^] # Re: En ligne de commande

            Posté par . Évalué à 1.

            Il n'y a pas vraiment de ligne de ce genre dans le about:config
            Il y a bien un fichier « /etc/.java/versions » d'évoqué, mais il n'existe pas sur ma distro (ubuntu 11.04).

            J'ai essayé de modifier la variable d'environnement JAVA_OPTS puis de lancer Firefox dans le même terminal, mais ça n'a pas fonctionné.

            Dans le about:plugins, il n'y a rien d'intéressant non plus...

            Je vais farfouiller un peu dans le .mozilla...

            Merci de ton aide, si tu as d'autres idées, n'hésite pas ;)

        • [^] # Re: En ligne de commande

          Posté par . Évalué à 1.

          Nope, pas possible :

          java "http://www.java.com/testvm2/Main.class"

          Exception in thread "main" java.lang.NoClassDefFoundError: http://www/java/com/testvm2/Main/class
          Caused by: java.lang.ClassNotFoundException: http:..www.java.com.testvm2.Main.class
          at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
          at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
          Could not find the main class: http://www.java.com/testvm2/Main.class. Program will exit.

        • [^] # Re: En ligne de commande

          Posté par . Évalué à 4.

          Dans konqueror c'est possible, dans la configuration pour java il y a une option "Argument java supplémentaires".

          • [^] # Re: En ligne de commande

            Posté par . Évalué à 1.

            Effectivement, ça pourrait m'être utile, mais malheureusement le plugin Java ne semble pas fonctionner pour le moment dans Konqueror.

            Je vais creuser ça, merci

            • [^] # Re: En ligne de commande

              Posté par . Évalué à 2.

              Konqueror n'utilise pas de plugin java, il utilise directement la commande java, il suffit d'avoir un JRE installé et ça devrait fonctionner.
              Bien sur, si l'applet doit interagir avec du javascript de la page, c'est un autre problème...

  • # Commentaire supprimé

    Posté par . Évalué à -1.

    Ce commentaire a été supprimé par l'équipe de modération.

  • # Toujours UA Switcher

    Posté par . Évalué à 1.

    Il permet de modifier aussi le SE (sous FF3 en tout cas).

    Voilà la procédure :
    - Outils > Modules complémentaires
    - Préférences de UA Switcher
    - Cliquer sur New > New User Agent
    - et là tu peux faire ce que tu veux, y compris changer le SE (Platform).

    Mes 2 cents :)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.