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 :

Développement planning GWT


Sujet :

GWT et Vaadin Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 26
    Par défaut Développement planning GWT
    Bonjour,

    Étant débutant, j'ai actuellement un problème pour le développement d'un planning avec GWT.

    Mon problème se pose plus au niveau du développement en java qu'avec GWT mais je préfère post ici pour avoir d'éventuelles remarques sur mon code.

    Je bloque pour la création de mon tableau avec le mois, le jour etc...

    J'ai actuellement pondu ça :

    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
    49
    50
    51
    public class AppliFT implements EntryPoint {
     
    	  private VerticalPanel mainPanel = new VerticalPanel();
    	  private FlexTable monthsFlexTable = new FlexTable();
    	  private FlexTable dayFlexTable = new FlexTable ();
    	  private FlexTable usersFlexTable = new FlexTable ();
     
     
     
    	  /**
               * Entry point method.
               */
    	  public void onModuleLoad() {
     
    		  	monthsFlexTable.setText(0, 0, "______");
     
    		  	for (int i=1; i<3; i++){	  	
    		    monthsFlexTable.setText(0, +i, DateTimeFormat.getFormat("MMMM ").format(new Date()));
     
    		  	}
     
    		  // Add styles to elements in the months list table.
    		    monthsFlexTable.getRowFormatter().addStyleName(0, "monthsListHeader");	  	
     
    		    int i=1;
     
    		    String month;
    		    month = DateTimeFormat.getFormat("MMMM ").format(new Date());
     
    		      do{
    		    	  dayFlexTable.setText(1, +i, DateTimeFormat.getFormat("d ").format(new Date()));
    		      }while(month != month+1);
     
    		  // Create table for users.
    		    usersFlexTable.setText(3, 0, "XXXXX");
     
    		  // Assemble Main panel.
    		    mainPanel.add(monthsFlexTable);
    		    mainPanel.add(dayFlexTable);
    		    mainPanel.add(usersFlexTable);
     
     
    		  // Associate the Main panel with the HTML host page.
    		    RootPanel.get("monthsList").add(mainPanel);
    		    RootPanel.get("dayList").add(mainPanel);
    		    RootPanel.get("usersList").add(mainPanel);
     
     
    	  }
     
    	}
    Le problème est qu'à l'exécution il arrive pas à exécuter le script :

    java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:183) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:510) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:352) at java.lang.Thread.run(Unknown Source) Caused by: com.google.gwt.core.client.JavaScriptException: (null): null at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:237) at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:126) at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561) at com.google.gwt.dev.shell.ModuleSpace.invokeNativeInt(ModuleSpace.java:245) at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeInt(JavaScriptHost.java:75) at com.google.gwt.user.client.ui.HTMLTable.getDOMRowCount(HTMLTable.java) at com.google.gwt.user.client.ui.HTMLTable.getDOMRowCount(HTMLTable.java:1197) at com.google.gwt.user.client.ui.FlexTable.getRowCount(FlexTable.java:151) at com.google.gwt.user.client.ui.HTMLTable.checkRowBounds(HTMLTable.java:1144) at com.google.gwt.user.client.ui.FlexTable.getCellCount(FlexTable.java:129) at com.google.gwt.user.client.ui.FlexTable.prepareCell(FlexTable.java:225) at com.google.gwt.user.client.ui.HTMLTable.setText(HTMLTable.java:1074) at com.example.AppliFT.client.AppliFT.onModuleLoad(AppliFT.java:46) ... 9 more

    D'où ma question : Est ce que ma façon de faire est plus ou moins réalisable ? Et une piste pour trouver mon erreur, je pense que ça vient de ma boucle do while mais j'arrive pas à cerner

    Merci

  2. #2
    Membre chevronné
    Profil pro
    Lead Tech Agile
    Inscrit en
    Septembre 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Lead Tech Agile

    Informations forums :
    Inscription : Septembre 2004
    Messages : 316
    Par défaut
    C'est une boucle infini ton truc. month sera toujours différent de month+1

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 26
    Par défaut
    Oui merci je m'en étais rendu compte mais oublié de reply ici

    Par contre je trouve pas de condition dans mon while qui me permette de dire que je suis passé au mois suivant.

  4. #4
    Membre chevronné
    Profil pro
    Lead Tech Agile
    Inscrit en
    Septembre 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Lead Tech Agile

    Informations forums :
    Inscription : Septembre 2004
    Messages : 316
    Par défaut
    Je te conseille de réaliser les calcul de date coté serveur. Tu prépare ton planning à afficher coté serveur et coté client tu ne fais qu'afficher.

    Il faut toujours garder en tete le principe de séparation des couches afin de garder un bon niveau de maintenabilité.

    Je te conseille de faire des recherches sur les pattern de GRASP. Et pour les opération de date il faut passer par Calendar coté serveur.

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/02/2013, 10h10
  2. Réponses: 8
    Dernier message: 10/10/2007, 09h42
  3. Quel composant pour développer une application de planning ?
    Par Wilco dans le forum Composants VCL
    Réponses: 7
    Dernier message: 19/02/2006, 13h12

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