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 :

[gwt]Conseil pour créer des pages dynamique


Sujet :

GWT et Vaadin Java

  1. #1
    cedrix57
    Invité(e)
    Par défaut [gwt]Conseil pour créer des pages dynamique
    Bonjour,

    Pour apprendre à utiliser GWT, je suis en train de réaliser un site personnel qui me présentera (pour les entreprises).
    C'est une site assez simple. En gros, il y aura une bannière en haut avec mon nom.
    Il y aura un menu à gauche avec des éléments comme par exemple "compétences", "expériences professionnelles", etc.
    La page à droite s'ajustera en fonction des cliques sur le menu.

    Pour le moment, j'ai mis un DockPanel dans le RootPanel de mon application. Ensuite, j'ai mis un MenuBar dans la partie gauche de mon DockPanel. Au centre, j'ai un HTML.
    Ensuite, dans mon MenuBar j'ajoute un certain nombre d'item, avec des Command.
    C'est là que je bloque. Dans chaque commande que je mettrai pour chaque item, j'ai pas trouvé de meilleur idée que de mettre ça :
    html.setHTML("le code en plusieurs ligne de la bonne page, avec plusieurs balise titre h1, h2 etc.")

    ça à l'air de marcher, mais je me demande si c'est vraiment dans la philosophie de GWT de faire ça ?

    Pour ceux qui veulent voir à quoi ressemble mon début d'application ou je suis plutôt en train de tester :

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    package com.google.gwt.project.sitepersonnel.client;
     
    import com.google.gwt.core.client.EntryPoint;
    import com.google.gwt.user.client.ui.DockPanel;
    import com.google.gwt.user.client.ui.VerticalPanel;
    import com.google.gwt.user.client.ui.MenuBar;
    import com.google.gwt.user.client.ui.RootPanel;
    import com.google.gwt.user.client.ui.HTML;
    import com.google.gwt.user.client.Command;
    import com.google.gwt.user.client.Window;
     
    /**
     * Entry point classes define <code>onModuleLoad()</code>.
     */
    public class sitePersonnel implements EntryPoint {
    	/**
             * The message displayed to the user when the server cannot be reached or
             * returns an error.
             */
    	private static final String SERVER_ERROR = "An error occurred while "
    			+ "attempting to contact the server. Please check your network "
    			+ "connection and try again.";
     
    	private DockPanel dockPanel = new DockPanel();
    	//private VerticalPanel menuVerticalPanel = new VerticalPanel();
    	private MenuBar menuLeft = new MenuBar(true); //TODO menuLeft.addStyleName("nameToFind");
    	private HTML homeText = new HTML("un petit test d'un contenu de page web");
     
     
    	/**
             * This is the entry point method.
             */
    	public void onModuleLoad() {
    		Command cmd = new Command(){
    			public void execute(){
    				homeText.setHTML("contenu de la page change");
    				Window.alert("You selected a menu item!");
    			}
    		};
    		dockPanel.add(homeText, DockPanel.CENTER);
    		//dockPanel.add(homeText2, DockPanel.CENTER);
    		menuLeft.addItem("item1", cmd);
    		menuLeft.addItem("item2", cmd);
    		//dockPanel.addWest(menuLeft);
    		dockPanel.add(menuLeft, DockPanel.WEST);
    		RootPanel.get().add(dockPanel);
    	}
    }
    Merci d'avance

  2. #2
    Membre du Club Avatar de dialloma
    Homme Profil pro
    Java / J2EE, PHP
    Inscrit en
    Août 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Java / J2EE, PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 70
    Points : 51
    Points
    51
    Par défaut
    Salut cedrix57,

    Ta solution n'est pas mauvaise mais Je penses qu'il y a plus souple comme méthode. Il s'agit d'utiliser l'architecture MVC (modèle vue controlleur) pour ton IHM.
    Un implémentation est faite par l'équipe de GXT . La javadoc est disponible ici : http://dev.sencha.com/deploy/gxtdocs/.
    Coté Widget, tout dépend de ce que tu veux. Si c'est une grosse appli de gestion que tu fais, avec des IHM complexes, GXT est mieux. Par contre si tu fais des pages Web simples (de la présentation), GWT est mieux. En effet, avec lui le CSS est moins long à mettre en place.
    Par contre, il faut savoir que si tu communique avec un serveur Java, ce n'est pas tous les hebergeurs qui peuvent t'héberger ton site ou alors il faut prévoir beaucoup coté finance. Mais google te propose des hébergements des applications GWT, tout se fait via le plugin qu'ils ont développé.
    Pour ton IHM, tu peux te baser sur des exemples de GWT : http://gwt.google.com/samples/Showca...l#!CwDockPanel

    Bon courage

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 57
    Points : 41
    Points
    41
    Par défaut
    Je cherche précisément à faire une applicaiton avec une dizaine de pages différentes contenant chacune des widget.

    Le deuxième lien google sur GXT est peu élogieux quand à la version gratuite : http://blog.loof.fr/2009/01/gxt-ou-pas.html
    Si c'est une question sujet au Troll inutile de répondre je ne voudrais pas le réveiller.

    Si je reste sur GWT qu'elle est la marche à suivre? J'ai bien trouvé un exemple de menu sur le site de google mais sans le changement de page.
    Est il possible d'avoir des url d'accès direct à certaine partie du menu?
    Que méprisez vous? par cela, on vous connaît vraiment. "Mua'Dib"

  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
    Points : 4 265
    Points
    4 265
    Par défaut
    @cedrix57

    Si tu commences justes, je te conseillerai également de découpler les responsabilités de chacunes de tes classes.
    Cela peut être du MVC, du MVP ou plus basique. L'essentiel est de ne pas tout faire dans une seule classe.

    Ensuite, si tu utilises la dernière version de GWT, de préférer le mode css standard au mode css quirk.
    Avant gwt 2.0, c'était du non standard obligatoirement.
    Avec gwt 2.0, on peut utiliser le standard.
    Attention, le doctype de la page html du module est différent.
    Pour faire du standard, c'est un doctype html 5 ! (celui généré par défaut par le plugin depuis la 2.0)

    Il faut également utiliser les nouveaux composants qui utilisent des css/div au lieu de tableaux.
    RootLayoutPanel remplace RootPanel
    DockLayoutPanel remplace DockPanel, ...
    Bien vérifier dans la doc de l'API.

    Pour ce qui est de l'HTML, il n'y pas de mal à l'utiliser si tu n'as pas de composants qui font l'équivalent. Si tu utilises souvent le même pattern HTML, tu as peut être intérêt à encapsuler le tout et à en faire un composant GWT.


    @bobymaw
    S'il est possible d'appeler d'autres url, c'est plutôt réservé pour des url externes. Pour un même site, si cela peut s'envisager pour des raisons X ou Y, il faut quand même remarquer que c'est pas trop dans la philosophie SPI (Single Page Interface) de GWT.
    Si vous avez plusieurs "écrans", je recommande d'utiliser un StackPanel (cf cette discussion : http://www.developpez.net/forums/d86...t/passer-page/)

    Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait. Marcel PAGNOL
    On ne savait pas que c'était impossible, alors on l'a fait. John Fitzgerald KENNEDY.
    L'inexpérience est ce qui permet à la jeunesse d'accomplir ce que la vieillesse sait impossible. Paul (Tristant) BERNARD
    La meilleure façon de prédire l'avenir, c'est de l'inventer.

Discussions similaires

  1. Procédure Stockée pour créer des TABLE dynamiquement
    Par GuyverZ dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 12/05/2009, 22h29
  2. Besoin de conseils pour créer une page avec un avatar
    Par cedric/copy dans le forum ASP
    Réponses: 5
    Dernier message: 02/04/2009, 13h46
  3. Cherche un outils pour créer des pages web
    Par jeha dans le forum Applications et environnements graphiques
    Réponses: 8
    Dernier message: 18/03/2007, 12h30
  4. Créer des pages dynamiques PHP avec base de données
    Par noobspower dans le forum Langage
    Réponses: 8
    Dernier message: 13/02/2007, 08h32
  5. Réponses: 5
    Dernier message: 06/09/2006, 13h15

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