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

Langage Java Discussion :

[Mustang] Rhino Javascript , pas tout comprit


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif
    Avatar de kedare
    Homme Profil pro
    SRE
    Inscrit en
    Juillet 2005
    Messages
    1 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : SRE

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 549
    Par défaut [Mustang] Rhino Javascript , pas tout comprit
    Salut !
    j'ai lus cette article sur le langage de scripting qui va etre ajouter a java :
    http://blog.developpez.com/index.php...&c=1&tb=1&pb=1
    mais je n'ai pas tout comprit ....
    en gros ca sera :
    Un langage de script ServerSide ? (comme php,jsp,asp)
    Un langage de script Client, avec code source visible ? (comme Javascript,Vbscript)
    Un langage de script client compilé (comme les applets ?)
    Un langage de script StantAlone (comme Python , Perl , etc ...)

    quelle en sera l'utilité ??
    merci !

  2. #2
    Membre émérite Avatar de sozie9372
    Inscrit en
    Mai 2005
    Messages
    713
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 713
    Par défaut
    A mon avis, ca permettra de générer du code Javascript un point c'est tout. A la manière du PHP. Je pense que ca sera integré coté serveur et ca fournira du code (Javascript + HTML) pour le client, mais ca ne reste que mon humble avis

  3. #3
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    L'objectif n'est pas de générer du JavaScript ou autre mais bien de l'exécuter, puisque Rhino est un moteur JavaScript (de Mozilla : http://www.mozilla.org/rhino/).


    Par exemple le code suivant permet d'exécuter un code JavaScript depuis une application Java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // On crée un Gestionnaire de Script :
    ScriptEngineManager mgr = new ScriptEngineManager();
    // On récupère le moteur JavaScript :
    ScriptEngine jsEngine = mgr.getEngineByName("JavaScript");
    try {
        // On exécute le code JavaScript :
        jsEngine.eval("print('Hello, world!')");
    } catch (ScriptException ex) {
        ex.printStackTrace();
    }
    Ce qui affichera "Hello, world!".


    Il est même possible de "lier" les objets Java et les variables JavaScript, par exemple ceci affichera 34.0 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // On exécute le code Javascript en récupérant son retour (dernière instruction
    Object o = jsEngine.eval("(3 + 2) * 8 - 6");
    System.out.println( o );
    Ou même mieux directement en nommant les variables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    jsEngine.eval("var x = (3 + 2) * 8 - 6");
    // On récupère la variable JavaScript 'x' pour l'afficher :
    System.out.println( jsEngine.get("x") );
    Et c'est également possible dans le sens inverse (Java vers Javascript) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Associe un objet Java avec un nom de varaible JavaScript :
    jsEngine.put("nomVariable", new Date());
    jsEngine.eval("println(nomVariable)"); // affiche la date du jour
    Et la même chose en appellent les méhodes de l'objet Java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jsEngine.eval("println(nomVariable.toString().substring(0,7))"); // affiche les 7 premiers caractères de la date
    Il est également possible d'utiliser directement des objets Java dans le code Javascript, etc... Pour plus de détail vous pouvez jeter un coup d'oeil à cet article (en anglais) : http://java.sun.com/developer/techni...top/scripting/




    L'intérêt vient du fait que l'on peut utiliser un langage de script dans Java, ce qui permet pas mal de chose sympa (des macros ou un système de plugins par exemple), et d'utiliser plusieurs langages différents dans une même application...


    Car en fait il ne s'agit pas d'une API pour exécuter du JavaScript, mais d'une API pour exécuter des langages de script en API.
    JavaScript sera disponible en standard mais il sera possible d'utiliser d'autres langages...

    D'ailleurs le projet https://scripting.dev.java.net/ propose déjà quelques moteurs supplémentaire, tel que Python, Ruby, Groovy et même Java (via la nouvelle API Java Compiler).

    a++

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 901
    Billets dans le blog
    54
    Par défaut
    Voici un exemple de l'interet d'integrer du scripting dans une application : Scott Violet a poste sur son blog une petite appli fort sympa qui permet de tester du code Java2D au vol pour voir ce que ca donne sans avoir a chaque fois a creer des classes de tests en surchargeant paintComponent() pour la nieme fois. Pour le moment ca n'utilise pas le moteur de scripting de Java 6 (et donc fonctionne aussi sur Java 1.5), ca utilise BeanShell qui est un moteur de scripts utilisant une syntaxe Java.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Tu peux également prendre comme exemple tous les systèmes de macro dans les suites bureautiques, ou encore le système d'extentions de Firefox/Thunderbird qui utilise (entre autre) du JavaScript dans une application C++.


    a++

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

Discussions similaires

  1. [SQL-Server] [MySQL] Le mssql_fetch_array() n'affiche pas tout
    Par PoZZyX dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 30/09/2005, 10h50
  2. [XSL]Comment faire ceci ?? Mon for-each n'affiche pas tout !
    Par Devil666 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 27/07/2005, 15h04
  3. [Débutant XML] Pas tout comprendre
    Par lenoir_franck dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 31/05/2005, 15h18
  4. fonction javascript pour tout cocher
    Par Flob dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/02/2005, 10h36
  5. Réponses: 3
    Dernier message: 16/04/2004, 16h51

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