Création archive .war

Paul Morel · le 09/11/16 à 12:00

Bonjour,

Je souhaiterais déployer mon application sur un serveur de recette (déploiement initiale). Mon serveur de recette est un Windows 2012 R2 sur lequel le scrcipt est d'ores et déjà installé, il contient une version de jcms vierge ainsi que toute la config nécessaire. L'app vierge fonctionne correctement.

En local, ma wabapp fonctionne également correctement.

Le soucis que je rencontre est que je n'arrive pas a générer mon archive .war. J'ai essayé de le faire via la commande 

jar -cvf  jcms903.war *.* (dans mon répertoire de l’application)

Mais cela créé une archive ne contenant que quelques fichiers et dossiers sans WEB-INF, donc sans web.xml.

Quand je lance le script, il me retourne donc une erreur en me disant qu'il ne trouve pas le web.xml.

J'ai également essayer d'exporter mon projet depuis eclipse au format WAR FILE mais le projet n'étant pas un web dynamic project, je ne peux pas exporter.

Quelle est la recommandation officielle pour créer cette archive ?

Merci d'avance,

Paul

4 pts
Olivier Jaquemet · le 09/11/16 à 12:34

Bonjour,

Très basiquement un fichier war en fait une archive au format zip dont le contenu est normalisé et dont l'extension est .war.
Il vous suffit donc d'utiliser n'importe quel outil de compression zip et d'y inclure l'ensemble des resources du système de fichier.

0 pt
Paul Morel · le 09/11/16 à 14:04

Bonjour Olivier,

 

Merci pour ce retour, donc si je comprends bien, je peux faire un zip et changer simplement l'extension ?

#1

oui.

Olivier Jaquemet · le 09/11/16 à 14:17
#2

OK parfait, merci. C'est en cours de déploiement à priori

Paul Morel · le 09/11/16 à 14:22
0 pt
Paul Morel · le 09/11/16 à 14:36

Donc, tout s'est bien déployé. Cependant, quand je relance mon serveur, je remonte une erreur 500 de tomcat en accédant à mon app via le nav.

org.apache.jasper.JasperException: /types/PortletQueryForeach/doForeachHeader.jspf (line: 45, column: 0) Impossible de trouver une méthode de mise à jour pour l'attribut: sizeAccurate

Je suis totalement débutant en java, est-ce que vous auriez une idée de ce à quoi cela peut être dû ?

#7

Je suppose que tomcat est exécuté en mode service, avec un compte utilisateur dédié, vérifiez que ce compte peut lire/modifier/supprimer tous les éléments de la webapp, ainsi que tous les répertoires temporaire de Tomcat.

Olivier Jaquemet · le 09/11/16 à 16:59
#8

Tomcat est bien utilisé en mode service avec un compte dédié, qui n'avait effectivement pas les droits d'écriture sur le disque apps. L'application démarre donc bien dorénavant. Cependant, elle démarre en mode sans echec et je ne peux donc plus accéder qu'à la page de propriété. Je n'ai pas trouvé de solution à ce problème sur la plateforme, est-ce que vous auriez une idée de comment faire ? Merci de votre aide

Paul Morel · le 10/11/16 à 09:33
#9

Bon finalement j'ai trouvé, il s'agissait d'un soucis avec le sgbdr qui était flaggué sur sql server dans les prop alors que le module n'était pas installé. Tout fonctionne donc correctement. Encore merci

Paul Morel · le 10/11/16 à 10:50
0 pt