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 :

Erreur "NoClassDefFoundError"


Sujet :

GWT et Vaadin Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut Erreur "NoClassDefFoundError"
    Hello!

    Je suis en train de monter un projet GWT mais je rencontre un soucis avec mon pom.xml.

    Tout d'abord le projet est constitué de 3 sous-projets, un pour la partie Data (avec Hibernate), un autre pour les services, et une partie cliente (GWT). (Et une partie Parent pour gérer les dépendances...)

    La partie Data est bien reconnue sous ma partie Service, mais la partie Service n'est pas reconnue sous ma partie Cliente ??


    J'arrive à lancer l'application GWT mais des que j'utilise un des services j'obtiens l'erreur suivante (la classe n'a pas été trouvée) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Caused by: java.lang.NoClassDefFoundError: eu/aci/facturation/services/HistorisationService
    	at eu.aci.facturation.client.widget.ContentWidget.(ContentWidget.java:22)
    	at eu.aci.facturation.client.layout.MainLayout.(MainLayout.java:34)
    	at eu.aci.facturation.client.NdfClient.onModuleLoad(NdfClient.java:32)
    	... 9 more

    Et ci-dessous le pom.xml de ma partie cliente :
    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    	<modelVersion>4.0.0</modelVersion>
     
    	<groupId>eu.aci.facturation</groupId>
    	<artifactId>facturation-war</artifactId>
    	<packaging>war</packaging>
     
    	<parent>
    		<groupId>eu.aci.facturation</groupId>
    		<artifactId>facturation</artifactId>
    		<version>1.0-SNAPSHOT</version>
    	</parent>
     
    	<!-- Properties -->
    	<properties>
    		<gwtVersion>2.4.0</gwtVersion>
    	</properties>
     
    	<dependencies>
    		<dependency>
    			<groupId>eu.aci.facturation</groupId>
    			<artifactId>facturation-data</artifactId>
    		</dependency>
     
    		<dependency>
    			<groupId>eu.aci.facturation</groupId>
    			<artifactId>facturation-services</artifactId>
    		</dependency>
     
    		<!-- Other dependencies -->
     
    		<dependency>
    			<groupId>com.google.gwt</groupId>
    			<artifactId>gwt-servlet</artifactId>
    			<version>${gwtVersion}</version>
    			<scope>compile</scope>
    		</dependency>
     
    		<dependency>
    			<groupId>com.google.gwt</groupId>
    			<artifactId>gwt-user</artifactId>
    			<version>${gwtVersion}</version>
    			<scope>provided</scope>
    		</dependency>
     
    		<dependency>
    			<groupId>com.oracle</groupId>
    			<artifactId>ojdbc6</artifactId>
    			<version>11.2.0.1.0</version>
    		</dependency>
     
    		<dependency>
    			<groupId>org.slf4j</groupId>
    			<artifactId>slf4j-api</artifactId>
    			<version>1.6.4</version>
    		</dependency>
     
    		<dependency>
    			<groupId>org.hibernate</groupId>
    			<artifactId>hibernate-core</artifactId>
    			<!-- <version>${hibernateVersion}</version> -->
    		</dependency>
     
    		<dependency>
    			<groupId>org.hibernate</groupId>
    			<artifactId>hibernate-entitymanager</artifactId>
    			<!-- <version>${hibernateVersion}</version> -->
    		</dependency>
    	</dependencies>
     
    	<!-- Build Settings -->
    	<build>
    		<outputDirectory>war/WEB-INF/classes</outputDirectory>
     
    		<pluginManagement>
    			<plugins>
    				<plugin>
    					<groupId>org.eclipse.m2e</groupId>
    					<artifactId>lifecycle-mapping</artifactId>
    					<version>1.0.0</version>
    					<configuration>
    						<lifecycleMappingMetadata>
    							<pluginExecutions>
    								<pluginExecution>
    									<pluginExecutionFilter>
    										<groupId>org.apache.maven.plugins</groupId>
    										<artifactId>maven-resources-plugin</artifactId>
    										<versionRange>[2.0,)</versionRange>
    										<goals>
    											<goal>resources</goal>
    											<goal>testResources</goal>
    										</goals>
    									</pluginExecutionFilter>
    									<action>
    										<ignore />
    									</action>
    								</pluginExecution>
    							</pluginExecutions>
    						</lifecycleMappingMetadata>
    					</configuration>
    				</plugin>
     
    				<plugin>
    					<groupId>org.codehaus.mojo</groupId>
    					<artifactId>gwt-maven-plugin</artifactId>
    					<version>${gwtVersion}</version>
    					<configuration>
    						<runTarget>facturation.html</runTarget>
    						<hostedWebapp>${project.build.directory}/${project.build.finalName}</hostedWebapp>
    					</configuration>
    					<executions>
    						<execution>
    							<goals>
    								<goal>compile</goal>
    								<goal>generateAsync</goal>
    								<goal>test</goal>
    							</goals>
    						</execution>
    					</executions>
    				</plugin>
     
    			</plugins>
    		</pluginManagement>
     
    	</build>
     
    </project>

    Je tiens également à préciser que je vois bien dans le dossier WEB-INF\lib de mon War, les jars concernant mes projets DATA et SERVICE.


    Je pense que le soucis vient de mon fichier XML mais j'ai beau chercher sur internet, je n'arrive pas à voir où se situe mon erreur.


    Je vous remercie par avance pour votre aide.

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut
    Personne ?

    Il manque des informations ?

  3. #3
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Citation Envoyé par massacreur Voir le message
    J'arrive à lancer l'application GWT mais des que j'utilise un des services j'obtiens l'erreur suivante (la classe n'a pas été trouvée) :
    Mais tu lances en hosted mode ?
    si oui vérifie ton classpath dans Eclipse dans ton "run configurations".
    Les projets GWT multi modules sous Eclipse avec Maven ont parfois des petits soucis de ce genre (enfin moi j'en ai en tous cas )

  4. #4
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut
    Alors je le lance à l'aide d'une commande Maven (clean compile war:exploded gwt:run), qui a pour but de lancer le GWT Develoment Mode.

    Du coup je ne sais pas trop où regarder ??
    J'ai paramétré le lancement de cette commande dans External Tools Configurations et dans la partie Build, j'ai sélectionné "The entire workspace".

    J'ai d'ailleurs testé également en sélectionnant les projets un à un mais sans résultat.


    Du coup je pense en effet que cela doit venir de la façon dont je lance l'application mais comment lui spécifier le classpath ?

  5. #5
    Membre confirmé Avatar de docr1
    Profil pro
    Inscrit en
    Février 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 74
    Par défaut
    Est ce que la projet Service est ouvert dans ton workspace?

    Sinon tu devrais procéder à un gwt:eclipse pour que ton jar soit copié dans le web-inf/lib.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut
    Citation Envoyé par massacreur Voir le message
    Je tiens également à préciser que je vois bien dans le dossier WEB-INF\lib de mon War, les jars concernant mes projets DATA et SERVICE.
    Le projet SERVICE est bien ouvert dans mon workspace, et le jar de ce projet se trouve bien dans le dossier WEB-INF\lib.

  7. #7
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Et si tu essaies en "web application" via le plugin Eclipse directement ?
    (en précisant les options et le classpath nécessaire)

  8. #8
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut
    J'ai essayé mais je sais pas j'ai du mal régler certaines options, impossible de le lancer de cette façon là!

    J'ai pourtant bien configurer ma Web Application :
    - en indiquant le nom du projet
    - le main class
    - vérifié le classpath
    - activer le web toolkit dans les propriétés de mon projet
    Sauf que là, je n'arrive pas à lui indiquer le chemin de mon Entry Point Module!
    Il ne veut rien savoir, ni en passant par le package, classe...

    Du coup quand je lance l'application, cela me donne le message d'erreur comme quoi il ne trouve pas de Main Class (erreur justement liée à ce Entry Point qui ne veut pas se définir o_O)
    Entry Point qui est pourtant bien défini dans mon "Run Configuration"...

  9. #9
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Pour ma part, le setup que j'utilise dans mon run configuration :

    Main class :
    com.google.gwt.dev.DevMode

    Arguments Java
    -war D:\...\war
    -startupUrl MyPage.html
    -remoteUI "${gwt_remote_ui_server_port}:${unique_id}" -logLevel INFO -codeServerPort 9997 -port 8888
    -workDir C:\temp
    package.to.my.entryPoint

  10. #10
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2011
    Messages : 50
    Par défaut
    Merci pour ton aide!

    Cette fois ci je rencontre un problème avec ma page d'accueil qui est inaccessible (erreur 404 Page not found - RequestURI = /facturation.html).

    Ma page se situe dans le dossier webapp, à l'emplacement ou GWT m'avait placé la page index.html lors de la création de l'application.

    Je n'arrive donc pas à démarrer l'application

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

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