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

GWT et Vaadin Java Discussion :

Brouillon de FAQ


Sujet :

GWT et Vaadin Java

Vue hybride

Mickael Baron Brouillon de FAQ 25/08/2009, 12h23
benwit L'internationalisation 25/08/2009, 12h44
benwit Notions d'architecture 25/08/2009, 14h39
benwit Structure d'un projet GWT 25/08/2009, 15h28
benwit Petits détails cosmétiques 25/08/2009, 16h32
benwit La compilation 26/08/2009, 08h00
benwit Installer GWT dans un IDE 28/08/2009, 12h49
benwit Livres 31/08/2009, 19h59
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    Juillet 2005
    Messages
    14 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2005
    Messages : 14 974
    Par défaut Brouillon de FAQ
    Bonjour à tous,

    Cela fait un moment que j'ai un projet de FAQ GWT mais je le reporte continuellement aux calanques grecques ...
    Je ne sais même plus où j'ai mis ce que j'avais commencé

    Bref, j'ai donc décidé aujourd'hui d'en créer une ici.
    Je vous encourage à poster des questions/réponses si le cœur vous en dit.
    Notez cependant que c'est un brouillon, que c'est perfectible et que par conséquent, la rédaction de la FAQ finale se fera avec l'approbation de l'équipe Java (Structuration du contenu, Corrections, etc...)
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  2. #2
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut L'internationalisation
    Comment localiser mon application GWT ?
    Démarche à suivre

    Comment supporter différentes langues ?
    Certains modules de librairies GWT sont internationalisés, c'est à dire que les libellés de certains composants existent dans différentes langues.
    Pour que le compilateur GWT génère autant de permutations qu'il y a de langues (anglais, allemand, français par exemple), il faut ajouter à votre fichier de module (module.gwt.xml par exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <inherits name="com.google.gwt.i18n.I18N"/>
    <extend-property name="locale" values="en"/>
    <extend-property name="locale" values="de"/>
    <extend-property name="locale" values="fr"/>
    Comment tester une langue ?
    Il faut ajouter un paramètre locale spécifiant le code iso de la langue à l'url d'appel de votre module. En hosted mode, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://localhost:8888/module.html?locale=fr
    Comment définir la langue par défaut ?
    Il faut ajouter une balise <meta> dans la balise <head> de la page html de votre application (module.html par exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta name="gwt:property" content="locale=fr">

  3. #3
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Notions d'architecture
    GWT est une boite à outils qui permet d'écrire des applications web en Java.

    Qu'est ce qu'une application web ?
    Une application web est déployée sur une ou des machines (serveurs physiques) où des logiciels "écoutent" (serveurs logiques) :
    • un serveur http appelé aussi serveur web tel que apache, ...

    • un serveur d'application qui peut jouer le rôle de serveur http
      • conteneur de servlet tel que tomcat, jetty, ...
      • serveur JEE tel que glassfish, weblogic, websphere, jboss, ...
      • module applicatif relié au serveur http tel que php, ...


    • un serveur de gestion de base de données (SGBD) tel que mysql, posgres, oracle, ...


    Lorsqu'un client http (navigateur web) se connecte via une adresse (url) à votre serveur physique, c'est le serveur http présent qui répond. (S'il ne devait en rester qu'un, ce serait lui )
    Sa réponse consiste à envoyer des données au client par le réseau (en utilisant le protocole http : c'est à dire le langage commun qu'ils parlent pour se comprendre )
    Ces données sont :
    • statiques : des fichiers stockés sur le serveur
    • dynamiques : un flux texte ou binaire généré en "live" par un serveur d'application qui lui même les fabrique suivant votre logique applicative (code) en utilisant des données provenant de fichiers ou de base de données.

    Ce sont des évidences pour certains mais ont besoin d'être rappelées pour comprendre où GWT opère !

    Qu'est ce que la partie cliente d'une application web ?
    C'est toutes les données qui sont envoyées au client !
    Certains pourront avoir d'autre définition mais dans le cas de gwt, celle là nous suffira.

    Qu'est ce que la partie serveur d'une application web ?
    Tout ce que ne voit pas le client, c'est à dire que tout le reste appartient au serveur !
    Par exemple, cette partie comporte tout le code Java (jsp, java, ...) compilé en byte code (.class) et interprété par la JVM du serveur.

    Qu'est-ce qui différencie une application web GWT d'une application web JEE ?
    • Les applications JEE classiques sont "server-side" :
      l'interface utilisateur est fabriquée dynamiquement sur le serveur par la JVM qui interprète du byte code Java pour générer un flux html envoyé au client.
      Remarquez :
      • le code HTML peut être statique (comme les images, les css, les js) mais il est généralement dynamique.
      • le code HTML envoyé au client représente à la fois les données et la représentation de ces données (la vue)


    • Les applications GWT sont "client-side" :
      l'interface utilisateur est fabriquée dynamiquement sur le client par le moteur JS du navigateur qui interprète du code Javascript et modifie le DOM
      Remarquez :
      • le code Javascript permettant de représenter les données (la vue) a été généré par GWT en une ressource statique récupérée sur le serveur et mis en cache par le navigateur.
      • le code (JSON/XML/RPC) envoyé au client représente uniquement les données


    Qu'est-ce qui différencie une application web GWT d'un site web HTML/CSS/Javascript ?

    Presque rien !
    • Les deux sont composées de fichiers statiques HTML/CSS/JS récupérés à la première connexion sur le serveur, mis en cache et interprété par le navigateur.
    • Il peut y avoir aucune communication après ce téléchargement initial. Il y a alors juste une partie cliente au pouvoir très limité (La seule partie dynamique est permise par le javascript)
    • Il peut y avoir une communication serveur avec n'importe quelle autre technologie (php, asp, java ...) du moment où les échanges sont standard (XML, JSON, HTML, ...)

    La différence apparaît lors du développement :
    • Les sites web HTML/CSS/JS sont écrits en HTML, CSS, JS. Pour la partie dynamique, l'utilisation de librairie Javascript aide au développement mais comme Javascript est un langage interprété, non typé et disposant de peu d'outils, il reste difficile de construire une application entièrement avec lui.

    • Les applications GWT sont écrites en Java par composition de Widgets comme on le fait en Swing et c'est le compilateur GWT qui se charge de traduire ce code Java en code HTML, CSS, JS. L'utilisation du langage Java et de ses nombreux outils rend plus facile le développement.
      De plus, si la partie serveur est développée en Java, la communication peut être est facilitée grâce au RPC (appel de procédure distante)


    Qu'est-ce qui distingue GWT des autres technologies ?

    • Sa productivité pour le développement de clients applicatifs riches puisque la partie serveur reste classique (juste un connecteur RPC pour Java)
    • Son approche "client-side" qui déporte la construction de l'interface utilisateur sur le client et après le chargement initial permet de n'échanger que des données avec le serveur.
    • Son compilateur qui permet de fabriquer du code multi-navigateur et d'optimiser les transferts (compression, ressources bundle, ...)

  4. #4
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Structure d'un projet GWT
    A quoi correspond le fichier "module.html" d'un projet GWT ?
    C'est le point d'entrée de votre application GWT.
    Il sera envoyé au client et c'est lui qui appelle le code JS généré par GWT.
    C'est cette page qui est manipulée dans votre EntryPoint.
    Elle peut être renommée, il faudra juste veiller à bien utiliser son nom dans l'url d'appel (et dans les paramètres d'exécution du hosted mode)

    A quoi correspond le fichier "module.gwt.xml" d'un projet GWT ?
    C'est un fichier apportant des informations au compilateur GWT tel que les autres modules à utiliser, l'emplacement des sources, ...
    Il peut être renommé, il faudra juste veiller à bien utiliser son nom dans les autres modules où il est appelé (et dans les paramètres d'exécution du hosted mode de ce module)

    Où trouver une description du fichier XML des modules ?
    Module XML files

    A quoi correspond le dossier "client" d'un projet GWT ?
    Le dossier qui contient le code Java qui sera compilé en Javascript par le compilateur GWT et interprété par le navigateur.
    Il correspondant à ma définition de "client" donnée précédemment : les données envoyées au navigateur.

    A quoi correspond le dossier "server" d'un projet GWT ?
    Le dossier qui contient le code Java qui sera compilé en byte code par le compilateur Java et interprété par le serveur d'application.
    A part la servlet des services RPC, cette partie reste du Java classique et les forums JEE peuvent aider.

    A quoi correspond le dossier "public" d'un projet GWT ?
    Le dossier qui contient les ressources statiques : images, css, ...

    Peut-on renommer les dossiers par défaut d'un projet GWT et quelles incidences cela a t'il ?
    Oui, on peut tous les renommer en respectant les conventions des noms de packages Java.
    Le nom du dossier "serveur" n'a aucune incidence s'il est libre.
    Les noms du dossier "client" et du dossier "public" doivent être modifiés dans le fichier de votre module (module.gwt.xml par exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <source path="client"/>
    <public path="public"/>
    Ils peuvent ne pas apparaître parce que ce sont des noms par défaut !

    Peut-on ajouter d'autres dossiers "client", "serveur", "public" ?
    Oui.
    Pour dossier "serveur", c'est du java classique donc package classique.
    Pour les dossiers "client" et "public", il faudra là encore penser à les ajouter au fichier de votre module (module.gwt.xml par exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <source path="client"/>
    <source path="data"/>
    <public path="public"/>
    Cet exemple montre qu'on a ajouté un dossier source "data" et indique au compilateur GWT d'aller chercher des fichiers Java dedans. On peut faire l'analogie avec le classpath et dire que ces dossiers constituent le sourcepath ! N'oubliez pas que GWT compile votre code client en JS et il lui faut donc tous les sources Java des dépendances.

    Personnellement, je conserve les dossiers "client" et "serveur", le premier contiendra l'interface utilisateur (front-end), le second les implémentations des services (back-end) et j'ajoute un dossier "data" pour les données qui transitent entre les deux.
    Pour résumer :
    • client : code Java transformé uniquement en javascript, pas besoin de byte code (non visible du serveur).
    • data : code Java transformé à la fois en javascript par le compilateur GWT et en byte code par le compilateur Java (visible des deux côtés)
    • server : code Java transformé uniquement en byte code par le compilateur Java (non visible du client)


    Peut-on ajouter des sous-packages "client" ?
    Oui à condition que vos sous packages contiennent du code Java qui pourra lui aussi être compilé en Javascript.
    • Si dans votre module, aucune balise source n'est indiquée, les sources de du dossier "client" et de tous ses sous dossiers sont vus par le compilateur.
    • Si dans votre module, vous avez déclaré des balises sources, les sources de ces dossiers ainsi et de leurs sous dossiers sont vus par le compilateur.

  5. #5
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Petits détails cosmétiques
    Comment utiliser un autre thème graphique ?

    Utiliser une des 3 variantes proposées en commentant les autres.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <inherits name='com.google.gwt.user.theme.standard.Standard'/>
    <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
    <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
    Pourquoi je ne peux pas modifier par CSS les couleurs des bordures des panneaux GWT ?
    Parce que ce sont des images. Il faut fabriquer d'autres images.

    Où trouver d'autres thèmes graphiques pour GWT ?
    Il existe une petite application qui permet de fabriquer un thème avec votre couleur préférée.

    Comment installer ce thème graphique "couleur" généré ?
    • Copier le fichier gwttheme.jar généré dans le dossier war/WEB-INF/lib de votre projet GWT.
    • Ajouter la ligne <inherits name='com.sensei.themes.couleur.Couleur'/> dans votre module.gwt.xml
    • Désactiver le style par défaut en retirant la ligne <inherits name='com.google.gwt.user.theme.standard.Standard'/>
    • Ajouter la librairie gwttheme.jar dans le classpath de votre projet GWT. (Faites Add Jar... et aller pointer sur le jar précédemment placé dans war/WEB-INF/lib )
    • Décompresser le contenu du dossier public (gwt\couleur\...) de gwttheme.jar dans le dossier war de votre projet.



    Comment définir l'icône à côté de l'URL ?
    1. Une solution consiste à créer un fichier image "favicon.png" et le placer à la racine de votre application (directement dans le dossier war)

    2. Une autre solution consiste à créer une image icon.png et d'ajouter un lien vers cette image dans le fichier html de votre module (module.html par exemple)
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      <link rel="shortcut icon" type="image/png" href="mod/img/icon.png" id="icon" />
      • mod représente le nom du dossier de compilation de votre module. Par défaut, c'est le nom du module préfixé par le nom du package.
        Il peut être renommé avec l'attribut rename-to de la balise module de votre module (module.gwt.xml)
        Code : Sélectionner tout - Visualiser dans une fenêtre à part
        <module rename-to='mod'>
      • img peut être un dossier ajouté après la compilation ou bien un sous dossier du dossier public qui sera recopié à chaque compilation.

    Comment modifier l'icône à côté de l'URL par programmation ?
    Vous noterez l'id "icon" dans la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <link rel="shortcut icon" type="image/png" href="mod/img/icon.png"  id="icon" />
    Il permet de le modifier par cette méthode ajoutée à la classe entry-point déclarée dans votre module :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        /**
         * Définit l'icone de la page.<br>
         * 
         * @param iconPath L'emplacement de l'icone.
         */
        public void setIcon(String iconPath)
        {
            if (iconPath != null)
            {
                this.iconPath = iconPath; 
                Element element = DOM.getElementById("icon");
                DOM.setElementProperty(element, "href", iconPath.toString());
            }
        }
    Comment se faire une belle petite page d'attente en attendant que le code JS soit chargé ?

    index.html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      	<head>
    	    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    		<link rel="shortcut icon" type="image/png" href="gui/images/favicon.png" id="icon" />
    		<link rel="stylesheet" type="text/css" href="gui/styles/loading.css" />
    	    <script type="text/javascript" language="javascript" src="gui/gui.nocache.js"></script>
    	    <title>Chargement en cours ...</title>
      	</head>
    	<body style="overflow: hidden">
    	    <div id="loading">
    	        <div class="loading-indicator">
    	           <img id="loading-img" src="gui/images/loading.gif" width="32" height="32"/>
    	           Merci de patienter<br/>
    	           <span id="loading-msg">Chargement en cours ...</span>
    	        </div>
    	    </div>
    	</body>
    </html>
    loading.css :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    #loading
    {
      position: absolute;
      left: 45%;
      top: 40%;
      margin-left: -45px;
      padding: 2px;
      z-index: 20001;
      height: auto;
      border: 1px solid #ccc;
    }
     
    #loading .loading-indicator
    {
      background: white;
      color: #444;
      font: bold 13px tahoma, arial, helvetica;
      padding: 10px;
      margin: 0;
      height: auto;
    }
     
    #loading-img
    {
      margin-right:8px;
      float:left;
      vertical-align:top;
    }
     
    #loading-msg
    {
      font: normal 10px arial, tahoma, sans-serif;
    }
    loading.gif :
    Vous mettrez l'image que vous voudrez, moi, je l'ai généré avec cet outil et ces paramètres :
    Indicator type : Indicator Big
    Background color : FFFFFF
    Foreground color : 000000

  6. #6
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut La compilation
    Pourquoi GWT a besoin des sources ?
    GWT, c'est principalement un compilateur qui transforme du code Java en code Javascript.
    Comme tout compilateur, il a donc besoin de fichiers sources (.java). Le byte code (.class), il s'en moque. Non seulement, produire du code JS à partir du byte code serait une gageure mais en plus, l'approche JSNI qui permet d'appeler du code natif JS consiste à inclure ce code js dans le source java (fonctions natives).

    Pourquoi dois-je indiquer dans mon module GWT où se trouve mon code source et comment faire ?
    Parce qu'il a besoin de savoir où il se trouve (cf question précédente) et qu'il ne peut pas le deviner tout seul !
    Utiliser le classpath comme sourcepath serait un problème car s'il y a bien du code Java (pour les objets circulant entre client et serveur) qui sera à la fois compilé par GWT et par Javac, il y a aussi dans le classpath du code non compilable par GWT.
    Par défaut, le code source est recherché dans un dossier "client" qui se trouve au même niveau que votre fichier de module.
    Vous pouvez le déclarer explicitement par une balise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <source path="client"/>
    Pourquoi GWT ne trouve pas ou ne peut pas utiliser certaines librairies ?
    • Côté serveur, c'est du Java classique, il faut que les librairies (.jar) soient dans le classpath et qu'elles contiennent du byte code (.class).
      Vous pouvez utiliser toutes celles que vous voulez et GWT s'en moque.

    • Côté client, souvenez vous que le code Java est transformé en Javascript et GWT veut des sources.
      • Pour votre code, c'est expliqué dans une autre Q/R.
      • Pour les librairies, les vôtres comme celles de tiers, il faut qu'elles soient compatible GWT,
        c'est à dire dont le source est visible et transformable en Javascript par le compilateur.


    Comment savoir si une librairie est compatible GWT et comment l'intégrer dans mon projet ?
    • Les fichiers jar de ces librairies doivent donc contenir des fichiers .java.
      (Dans les premières versions, le jar devait comporter un index des classes contenues, cet index peut être généré lors de la création du jar)

    • Ces librairies doivent être des modules GWT et il faudra les inclure dans le fichier de votre module :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      <inherits name='com.extjs.gxt.ui.GXT'/>


    Pourquoi dois-je inclure dans mon module du code fourni par GWT ?
    Comme les import en Java, il est probable que cela soulage le compilateur, on importe que le nécessaire.
    Et rappelez vous, c'est parce que le compilateur GWT fabrique du javascript qu'il y a
    • un sourcepath en plus du classpath,
    • des inherits en plus des import.


    Pourquoi certaines classes du JDK provoque des erreurs à la compilation ?
    Parce qu'encore une fois, même ces classes ont besoin d'être convertis en javascript.
    La solution choisie par Google est de les émuler et cette émulation ne peut être faite que partiellement (il y a des choses qu'on fait en java et qu'on ne peut pas faire en javascript au sein d'un navigateur)

    Comment connaître les classes du JDK qui sont émulées ?
    Une page les référence.

    C'est quoi l'erreur "No source code is available for type" ... "did you forget to inherit a required module?" ?
    [ERROR] Line XX: No source code is available for type fr.societe.projet.xxx.MaClasse; did you forget to inherit a required module?
    GWT ne trouve pas le code source de la classe fr.societe.projet.xxx.MaClasse.
    Si fr.societe.projet est votre module, vérifiez que le dossier xxx est bien un dossier source déclaré dans votre module :
    Pourquoi ça compile pas ?
    Si ça ne compile pas, il est fort probable que l'erreur provienne d'un de ces cas :
    • Le compilateur ne trouve pas vos fichiers sources Java (vérifiez qu'une balise source pointe bien vers un dossier contenant vos fichiers)
    • Le compilateur ne trouve pas le fichier de votre module (vérifiez que celui indiqué aux paramètres du compilateur porte le bon nom)
    • Il y a des erreurs de syntaxe Java détectées généralement par votre IDE (corrigez les)
    • Il y a des erreurs de références à du code que le compilateur ne peut pas compiler car il ne trouve pas les sources (vérifiez que votre code source fait référence à des librairies compatibles GWT et à des classes émulées du JRE).

  7. #7
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Installer GWT dans un IDE
    Pour développer en GWT, que faut il ?

    Il faut un environnement de développement Java :

    Si le développement "à la main" est possible (il faudra suivre les instructions sur leur site), l'utilisation d'un IDE (les deux premiers sont gratuits) est recommandée (refactoring, debuggage, ...)

    Il faut le toolkit GWT !


    Quelle est la dernière version de GWT ?

    C'est la 2.0.4


    Où télécharger GWT ?


    Comment installer GWT sous Eclipse 3.5 ?
    • Allez dans le menu "Help > Install new software"
    • Cliquez sur le bouton "Add"
    • Copiez dans "location" l'url http://dl.google.com/eclipse/plugin/3.5
    • Faites OK, cochez les composants à ajoutez et suivez les instructions d'eclipse.


    Comment installer GWT sous Netbeans ?

    http://maksud.iblogger.org/2009/08/05/gwt-in-netbeans/

    ... si une bonne âme passe par là , a un lien ou un rapide résumé, je me ferai un plaisir de mettre à jour ...

    Comment installer GWT sous ... ?
    ... idem pour votre IDE favori

  8. #8
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Livres
    Quels sont les livres anglophones sur GWT ?



    Quels sont les livres francophones sur GWT ?

    [ame="http://www.amazon.fr/GWT-applications-interactives-Toolkit-versions/dp/2100531824/ref=sr_1_1?ie=UTF8&s=books&qid=1258965343&sr=8-1"]Dunod # GWT (Olivier Gérardin)[/ame]


    Quels sont les livres allemands sur GWT ? (pour nos amis suisses)

    [ame="http://www.amazon.fr/Das-Google-Toolkit-Michael-Seemann/dp/3897217198/ref=sr_1_55?ie=UTF8&s=books&qid=1251738340&sr=1-55"]O'reilly Vlg. Gmbh & Co # Das Google Web Toolkit (Michael Seemann)[/ame]

    [ame="http://www.amazon.fr/Das-Google-Toolkit-Ralph-Steyer/dp/3939084212/ref=sr_1_4?ie=UTF8&s=books&qid=1251738773&sr=1-4"]Software # Das Google Web Toolkit (Ralph Steyer)[/ame]

    [ame="http://www.amazon.com/GWT-im-Einsatz-Adam-Tacy/dp/3446412417/ref=sr_1_22?ie=UTF8&s=books&qid=1251738122&sr=1-22"]Hanser Fachbuchverlag # GWT im Einsatz (Adam Tacy)[/ame]

    [ame="http://www.amazon.com/Google-Web-Toolkit-Martin-Marinschek/dp/3898644715/ref=sr_1_11?ie=UTF8&s=books&qid=1251738179&sr=1-11"]Dpunkt.Verlag GmbH # Google Web Toolkit (Martin Marinschek)[/ame]


    Quels sont les livres anglophones sur EXT-GWT ?

  9. #9
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Par défaut Les liens
    Comment faire un lien interne en GWT (<a href="#ancre">Cliquez ici</a>) ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Hyperlink link = new Hyperlink("Cliquez ici", "ancre");
    Comment utiliser un lien comme un bouton (<a href="javascript:alert("coucou");">Lien qui exécute une action locale</a>) ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Hyperlink link = new Hyperlink();
    link.setText("Lien qui exécute une action locale");
    link.addClickHandler(new ClickHandler()
    {
                @Override
                public void onClick(ClickEvent event)
                {
                    Window.alert("coucou");
                }
    });
    Comment faire un lien externe qui ouvre le document dans la fenêtre courante (<a href="http://www.developpez.com">Le site développez.com</a>) ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Hyperlink link = new Hyperlink();
    link.setText("Le site développez.com");
    link.addClickHandler(new ClickHandler()
    {
                @Override
                public void onClick(ClickEvent event)
                {
                    Window.Location.replace("http://www.developpez.com");
                }
    });
    Comment faire un lien externe qui ouvre le document dans une nouvelle fenêtre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Hyperlink link = new Hyperlink();
    link.setText("Le site développez.com");
    link.addClickHandler(new ClickHandler()
    {
                @Override
                public void onClick(ClickEvent event)
                {
                    Window.open("http://www.developpez.com", "Developpez", "");
                }
    });
    Comment modifier le stylepar défaut des liens?

    Modifier le style par CSS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    .gwt-Hyperlink
    {
    	cursor:pointer;
    }
    Pourquoi j'ai un "warning" GWT sur mes liens ?
    Pour vous prévenir des tentatives d'attaques XSS à ce qu'il paraît (quand on quitte votre domaine pour aller sur un autre)

    Comment enlever ce "warning" GWT ?

    En ajoutant l'url (ou un modèle d'url) dans la liste blanche.
    Cela se fait dans les arguments de compilations GWT avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -whitelist "^http[:][/][/]www[.]developpez[.]com"

Discussions similaires

  1. Merci de nous aider à créer des ressources (FAQ et sources)
    Par Community Management dans le forum Evolutions du club
    Réponses: 29
    Dernier message: 19/10/2015, 00h35
  2. [FORMS] Chemin des icones (intégré FAQ 150 QR)
    Par jerome62 dans le forum Forms
    Réponses: 2
    Dernier message: 30/07/2002, 08h32

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