IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Applets Java Discussion :

java to javascript


Sujet :

Applets Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Par défaut java to javascript
    Bonjour,

    J'essaie d'appeler du javascript depuis une applet Java en utilisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getAppletContext().showDocument(new URL("javascript:myfunc()"));
    Cela fonctionne bien, cependant :

    1/ le navigateur (internet explorer ,firefox) produit le son d'un changement de page, car c'est comme si on "changait l'adresse de la page", comment appeler du javascript depuis l'applet java sans créer ce "changement de page"


    2/ dans le cas d'internet explorer, mon applet fait cet appel tres tot alors que le onload de ma page n'a pas fini de s'executer, cet appel prend alors la main, et mon onload ne finit pas son execution (ma page n'est pas finie d'etre initialisée).

    3/ Quel est le meilleur moyen pour appeler du javascript depuis java, car durant mes recherches j'ai testé d'autres méthodes, par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JSObject.getGlobal().callMember("alert", "hello from Java");
    mais il y a des problemes selon les methodes.


    En vous remerciant.

  2. #2
    Membre émérite
    Avatar de kmdkaci
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 560
    Par défaut java to javascript
    Bonjour,
    En ec qui me concerne, pour appeler l'Applet à partir de Java j'utilise JSObject par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    private JSObject jso;
    try
      { jso.call("maMethodeJs1", new String[]{"maChaine"});
         }
      catch(Exception ex)
        {
     
        }
    voici une discussion sur ce sujet.

    A+

  3. #3
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Par défaut
    ta méthode a l'air mieux cependant quel import fais tu ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    import netscape.javascript.JSObject;
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    import sun.plugin.javascript.JSObject;
    Pourquoi y-a-t-il plusieurs manières d'appeler du javascript depuis java ? plusieurs imports possibles ? certaines sont elles obsolètes ?

    J'ai l'impression que celle que j'utilise est plutôt de la bidouille étant donné que c'est en fait un appel d'adresse dans le navigateur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getAppletContext().showDocument(new URL("javascript:bidouille(':-)')"));
    En utilisant ta méthode, je me prend une exception dans la figure
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jso.call failed access denied (java.lang.RuntimePermission accessClassInPackage.sun.plugin.javascript)
    Dois-je modifier mon fichier policy, ou signer mon applet pour éviter cette exception ?

  4. #4
    Membre émérite
    Avatar de kmdkaci
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 560
    Par défaut java to javascript
    Bonjour,
    Les imports qu'il faut réaliser sont
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import netscape.javascript.JSException;
    import netscape.javascript.JSObject;
    Aussi n'oublie pas lors de l'appel l'Applet d'inserer l'option :mayscript="true" dans la balise <Applet.....

  5. #5
    Membre habitué
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Par défaut
    En fait mon problème venait d'un problème de multi JRE installées sur ma machine et Firefox, Opera et Internet explorer en utilisaient chacun un différent, avec dans certain cas le fichier plugin.rar manquants ...

    J'avais donc un fonctionnement différent sur le 3 navigateurs ...

    Donc maintenant cela marche très bien merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Liveconnect avec Opera 8.5 (appel Java depuis JavaScript)
    Par Gregory3000 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/10/2005, 08h32
  2. comment appeler une fonction JAVA en JAVASCRIPT ?
    Par heleneh dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 13/09/2005, 12h21
  3. comment appeler une fonction JAVA en JAVASCRIPT ?
    Par heleneh dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/09/2005, 12h04
  4. [Applet] appel de methodes java en javascript
    Par soulhouf dans le forum Applets
    Réponses: 16
    Dernier message: 06/09/2005, 14h18
  5. Variable Java dans JavaScript
    Par blaiseac dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/12/2004, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo