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 :

Ajouter une classe au projet.


Sujet :

GWT et Vaadin Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Par défaut Ajouter une classe au projet.
    Bonjour à tous,

    Je commence dans GWT, et j'ai suivi un tuto pour créer ma première application GWT, je souhaiterais lui rajouter une classe "enfant" que j'utilise dans ma classe principale qui est exécuté au lancement.
    Au moment de l’exécution j'ai eu un message comme quoi il fallait la référencer cette classe dans le fichier gwt.xml.
    J'ai donc ajouté une ligne, voici le fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
          <!-- Other module inherits                                      -->
    	  <inherits name='com.rednels.ofcgwt.OFCGWT'/>
    	  <inherits name='singulier.enfant'/>
     
          <!-- Specify the app entry point class.                         -->
          <entry-point class='com.gwttest.client.Test'/>
     
          <!-- Specify the application specific style sheet.              -->
          <stylesheet src='Test.css' />
    la classe "enfant", se trouve dans le src/singulier/

    Je relance l’application, et cette fois j'ai ce message :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [ERROR] Unable to find 'singulier/enfant.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
    J'ajoute donc la classe enfant dans le classpath sous "user entries" mais toujours le même message.

    J'ai du oublié quelque chose, auriez vous une idée ?

    D'avance merci.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 165
    Par défaut
    Ta classe enfant doit se trouver dans un package dont le nom est de la forme : xxxx.client.yyyyy

    Dans ton fichier xxx.gwt.xml principal tu as la déclaration des packages qui seront considéré comme le côté client de ton application, cette déclaration ce fait en ajoutant les lignes

    <source path="client" />
    <source path="shared" />
    <source path="[un autre package]" />

    Les packages enfants n'ont pas a être déclaré.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Par défaut
    Salut,

    Merci de ta réponse, si j'ai bien compris j'ai ma classe enfant qui est dans le src / singulier.
    J'aoute donc dans le gwt.xml les lignes suivantes :

    <source path="client" />
    <source path="shared" />
    <source path="singulier" />

    J'ai donc ce fichier :
    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
     
    <module>
     
          <!-- Inherit the core Web Toolkit stuff.                        -->
          <inherits name='com.google.gwt.user.User'/>
     
          <!-- Inherit the default GWT style sheet.  You can change       -->
          <!-- the theme of your GWT application by uncommenting          -->
          <!-- any one of the following lines.                            -->
          <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'/> -->
     
          <!-- Other module inherits                                      -->
    	  <inherits name='com.rednels.ofcgwt.OFCGWT'/>
     
          <!-- Specify the app entry point class.                         -->
          <entry-point class='com.gwttest.client.Test'/>
     
          <!-- Specify the application specific style sheet.              -->
          <stylesheet src='Test.css' />
     
          <source path="client" />
    	  <source path="shared" />
          <source path="singulier" />
     
    </module>
    Cependant à l’exécution j'ai toujours la même erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [ERROR] Line 114: No source code is available for type singulier.enfant; did you forget to inherit a required module?
    Si j'ajoute simplement la ligne <source path="singulier" /> au lieux des 3 nouvelles.

    J'ai deux autres erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    [ERROR] Hint: Previous compiler errors may have made this type unavailable
    [ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly

  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
    Cette erreur veut dire qu'il manque le fichier .java au comilateur GWT.

    Le compilo voit le enfant.class mais il n'a pas le fichier enfant.java dans son classpath.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Par défaut
    Salut pvoncken,

    Merci de tes conseils, j'ai bien ajouté le fichier enfant.java dans le classpath sous User Entries. Mais quand je relance le projet j'ai deux erreurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [ERROR] Line 111: No source code is available for type singulier.enfant; did you forget to inherit a required module?
    Ligne 110, c'est ici que je déclare une variable utilisant le type "enfant".


    S'en suit une autre erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [ERROR] Unable to find type 'com.gwttest.client.Test'
    Qui doit être lié à la première, car si je supprime de test.java l'utilisation de la variable de type enfant le projet se lance.


    Revoici mon gwt.xml :
    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
     
    <module>
     
          <!-- Inherit the core Web Toolkit stuff.                        -->
          <inherits name='com.google.gwt.user.User'/>
     
          <!-- Inherit the default GWT style sheet.  You can change       -->
          <!-- the theme of your GWT application by uncommenting          -->
          <!-- any one of the following lines.                            -->
          <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'/> -->
     
          <!-- Other module inherits                                      -->
    	  <inherits name='com.rednels.ofcgwt.OFCGWT'/>
     
          <source path="client" />
          <source path="shared" />
          <source path="singulier" />
     
     
          <!-- Specify the app entry point class.                         -->
          <entry-point class='com.gwttest.client.Test'/>
     
          <!-- Specify the application specific style sheet.              -->
          <stylesheet src='Test.css' />
     
    </module>
    Mon arborescence de projet :


    Mon classpath :

  6. #6
    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
    Ton package singulier doit être au meme niveau que le package com.gwttest.client.

    Tu dois donc avoir com.gwttest.singulier si tu souhaites que ton gwt.xml soit correct.

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

Discussions similaires

  1. Ajouter une fenêtre au projet
    Par sab_info dans le forum C++Builder
    Réponses: 4
    Dernier message: 04/04/2008, 22h20
  2. ajouter une classe dans un projet
    Par bonbino dans le forum C++Builder
    Réponses: 4
    Dernier message: 23/10/2006, 14h35
  3. Ajouter une class CSS a une nouvelle cellule
    Par Arfigado dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/09/2006, 10h08
  4. ajouter une dll à un projet devcpp....
    Par youp_db dans le forum Windows
    Réponses: 1
    Dernier message: 28/09/2005, 21h33
  5. ajouter une dll à un projet devcpp....
    Par youp_db dans le forum Dev-C++
    Réponses: 1
    Dernier message: 28/09/2005, 20h47

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