2 votes

Comment utiliser GWT - RPC vers le serveur Tomcat

  1. Tomcat 6 installé
  2. Installé Eclipse + plugin GWT
  3. Projet GWT créé avec l'exemple code généré
  4. Projet GWT compilé (GWT compile)
  5. Copie du répertoire war (compilé) depuis l'espace de travail d'eclipse à TOMCAT webapps/Root
  6. Exécuter localhost:8080 sur mon navigateur

La page sample.html du projet GWT s'affiche correctement mais lorsque j'essaie de faire un appel au serveur, une erreur se produit.

  • Aucun problème avec la jetée (Eclipse GWT develpment mode) - rpc fonctionne bien
  • PROBLÈME à TOMCAT.

Le journal de catalina.out à TOMCAT dit :

Erreur de déploiement d'une application web répertoire Root Erreur java.lang.UnsupportedClassVersionError : Mauvais numéro de version dans le fichier .class (impossible de charger la classe com.tomcat.server.GreetingServiceImpl)

Je suppose qu'il y a un problème dans WEB_INF/web.xml au niveau de la définition des servlets, voici mon web.xml

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   version="2.5">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>

  <!-- Servlets -->
  <servlet>
    <servlet-name>greetServlet</servlet-name>
    <servlet-class>com.tomcat.server.GreetingServiceImpl</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>greetServlet</servlet-name>
    <url-pattern>/tomcat/greet</url-pattern>
  </servlet-mapping>

  <!-- Default page to serve -->
  <welcome-file-list>
    <welcome-file>Tomcat.html</welcome-file>
  </welcome-file-list>

</web-app>

3voto

Eelke Points 7687

Vous compilez probablement vos classes avec un jdk plus récent que celui utilisé par Tomcat.

3voto

Spidy Points 10242

J'ai eu ce même problème lors du déploiement sur mon serveur d'hébergement Godaddy. Il fonctionnait bien sur ma machine locale mais pas lors du déploiement. J'ai eu exactement le même message d'erreur. Le problème est que vous avez compilé votre code avec une version de java qui est plus récente que celle utilisée par Tomcat.

Install jdk1.5.0_22 (Or whatever your tomcat server is using)
Probably need to restart your machine
Eclipse->Window->Preferences->Java->Installed JRES->Add
Standard VM->Next
Browse to the directory of your jdk
Finish
Clean the project
Compile the project
Redeploy and cross your fingers!

Cela a fonctionné pour moi, si ce n'est pas le cas pour vous, alors....ya... cela devrait fonctionner. Bonne chance

1voto

kostas trichas Points 571

J'utilise la commande GWT-SDK webAppCreator (depuis le terminal) et elle génère tous les fichiers nécessaires pour fonctionner sur un serveur externe comme Tomcat.

Je vais fournir les étapes que j'ai suivies afin d'aider les autres à commencer avec un développement simple de GWT-TOMCAT.

TOMCAT

  1. Téléchargez une version de Tomcat, je préfère Tomcat 6 http://apache.tsl.gr/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.zip

  2. Suivez les instructions de votre système d'exploitation spécifique afin de l'installer. J'ai suivi ce tutoriel (MAC-OS) http://www.malisphoto.com/tips/tomcatonosx.html

GWT

  1. Téléchargez une version de GWT-SDK (j'utilise 2.0.4 que je trouve plus stable et compatible avec les sources externes comme la bibliothèque EXT-GWT et TOMCAT) http://code.google.com/p/google-web-toolkit/downloads/list

  2. Ouvrez votre TERMINAL si vous êtes un utilisateur UNIX puis changez de répertoire vers le GWT-SDK que vous venez de télécharger

  3. Changez les permissions pour exécuter le script de webAppCreator. Je modifie habituellement les permissions de tous les fichiers en tapant - > chmod 750 *

  4. Créer un projet GWT en exécutant dans le terminal -> ./webAppCreator -out MyProject com.myproject

  5. Tous les fichiers sont générés automatiquement

  6. Changez de répertoire vers le projet que vous venez de créer, tapez dans le terminal -> cd MonProjet

  7. Compilez votre projet avec le ant script fourni par le GWT-SDK, tapez dans le terminal -> ant build

  8. Ouvrez votre projet et copiez le fichier build.xml, le contenu de war/ dans le dossier webapps/Root de Tomcat.

  9. ENFIN, ouvrez votre navigateur et tapez localhost:8080/ pour lancer votre projet (il ouvrira la page .html de votre projet par défaut car elle est définie dans le fichier /WEB-INF/web.xml).

Félicitations !

1voto

Tony BenBrahim Points 3827

Vous ne pouvez obtenir cette erreur que si la version du JDK utilisée pour compiler les classes est SUPERIEURE à la version du JDK utilisée par Tomcat. PÉRIODE. Toute autre solution est inutile.

Quelle est la valeur de l'environnement JAVA_HOME ?

Regardez les journaux de démarrage de Tomcat, quel JDK utilise-t-il au démarrage, il est en haut des journaux au démarrage.

Regardez maintenant votre outil de développement qui a compilé les classes. Il DOIT utiliser un JDK différent avec une version supérieure pour que vous obteniez cette erreur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X