Eclipse – Comment puis-je changer une “Facette de projet” de Tomcat 6 à Tomcat 5.5?

(Eclipse 3.4, Ganymede)

J’ai un projet d’application Web dynamic existant dans Eclipse. Lorsque j’ai créé le projet, j’ai spécifié “Configuration par défaut pour Apache Tomcat v6” dans le menu déroulant “Configuration”.

C’est un mois ou deux plus tard, et je voudrais maintenant changer la configuration pour Tomcat ‘v5.5’. (Ce sera la version de Tomcat sur le serveur de production.)

J’ai essayé les étapes suivantes (sans succès):

  • J’ai sélectionné les Targeted Runtimes dans les Properties du projet
    L’option Tomcat v5.5 était désactivée et l’interface utilisateur affichait ce message:
    If the runtime you want to select is not displayed or is disabled you may need to uninstall one or more of the currently installed project facets.
  • J’ai ensuite cliqué sur le lien Uninstall Facets...
    Sous l’onglet Runtimes , seul Tomcat 6 affiché.
    Pour Dynamic Web Module , j’ai choisi la version 2.4 au lieu de 2.5 .
    Sous l’onglet Runtimes , Tomcat 5.5 maintenant affiché.
    Cependant, l’interface utilisateur affiche maintenant ce message:
    Cannot change version of project facet Dynamic Web Module to 2.4.
    Le bouton Finish était désactivé – j’ai donc atteint une impasse.

Je peux créer un nouveau projet avec une configuration Tomcat v5.5. Pour une raison quelconque, cependant, cela ne me permettra pas de rétrograder un projet existant.

En guise de solution, j’ai créé un nouveau projet et copié les fichiers source de l’ancien projet. Néanmoins, le travail était assez pénible et quelque peu maladroit.

Quelqu’un peut-il expliquer comment je peux “rétrograder” la configuration du projet de “Tomcat 6” à “Tomcat 5”? Ou peut-être faire la lumière sur pourquoi cela est arrivé?

Merci
Pete

C’est une sorte d’éclipse de piratage et vous pouvez avoir des problèmes en procédant ainsi, mais cela devrait fonctionner:

Ouvrez la vue du navigateur et trouvez qu’il existe un dossier .settings dans votre projet, puis développez-le, puis ouvrez le fichier: org.eclipse.wst.common.project.facet.core.xml . Une ligne indiquant: Modifiez cela en 2.4 et enregistrez.

Assurez-vous simplement que votre projet n’utilise rien de spécifique pour 2.5 et que vous devriez être bon.

Vérifiez également que votre fichier web.xml a la configuration correcte:

  

Cela peut être vieux mais j’ai essayé et trouvé ce qui suit dans éclipse Galilio.

Ouvrez la vue du navigateur et trouvez qu’il existe un dossier .settings sous votre projet, puis développez-le, puis ouvrez le fichier: org.eclipse.wst.common.project.facet.core.Delete le contenu de ce fichier et cliquez avec le bouton droit sur le projet. et cliquez sur les propriétés. Accédez à Project Facats dans la fenêtre contextuelle, vous pouvez cliquer sur les tabs d’exécution et convertir votre projet en une nouvelle facette.

Si vous utilisez Maven, puis fermez eclipse, puis tapez >mvn eclipse:eclipse -Dwtpversion=2.0 et redémarrez l’éclipse.

Désolé, il semble que je ne peux pas poster un commentaire sans assez de représentant alors …

Je pense qu’il est trop difficile pour eclipse de se dégrader en toute sécurité à un niveau inférieur car il ne peut pas vraiment savoir si vous avez utilisé quelque chose de la nouvelle norme Web. Donc, si cela vous permet de le faire, cela peut entraîner l’échec de votre programme sur une version antérieure.

Vous pouvez toujours être rétrocompatible mais pas compatible avec les versions antérieures.

Vous pouvez essayer de décocher la facette, appliquer, modifier la valeur de la facette et vérifier. Cela fonctionne pour moi dans Eclipse Helios SR1.

La principale différence est que je le fais avec «Dynamic Web Module».

J’espère que cela fonctionne pour vous aussi.

J’ai vu la même chose, puis j’ai modifié la valeur de la version web-app dans le web.xml . Cela pourrait vous aider.

Si vous utilisez maven, vous pouvez générer les parameters d’éclipse à l’aide du plugin maven eclipse.

Pour la version jst.web, le plug-in éclipse Maven prend en compte les dépendances du projet. Si vous avez une dépendance d’api de servlet définie:

  org.apache.tomcat servlet-api 6.0.32  

Votre paramètre jst.web sera 6.0

  ...  ...