Supposons que vous ayez plusieurs applications qui partagent le même code et la plupart des autres ressources, mais qui ont un aspect différent, certaines étiquettes changent, etc. (pensez à l'image de marque). Si chaque application Web doit aller dans son propre fichier WAR, où mettez-vous les ressources partagées?différents fichiers WAR, ressources partagées
J'utilise déjà le classpath pour partager des classes et des fichiers de propriétés. Mais qu'en est-il des fichiers javascript et css? Est le meilleur moyen de créer et de déployer un fichier WAR supplémentaire qui servira ces fichiers partagés à n'importe quelle autre application les requiert? J'ai aussi pensé à un script de construction qui fait un peu de magie et d'une source commune crache les WAR (légèrement) différents, mais je ne l'aime pas parce que cela complique les choses inutilement quand vous avez besoin de construire/tester/exécuter une seule application.
D'autres conseils et astuces seraient appréciés.
CommonWar ne sert à rien dans ce cas. Placez simplement vos ressources communes dans chaque WAR dans son répertoire lib ou dans le fichier EAR lui-même. Une guerre n'est pas destinée à simplement regrouper des ressources, l'EAR sert cet objectif. Bien que moins de configuration soit nécessaire si vous le mettez simplement dans chaque WAR. – Robin
Oui, mais si je mets les ressources communes dans chaque fichier WAR, alors je duplique ces ressources: ne le fera pas. Si je place les ressources communes dans le fichier EAR, il doit contenir tous les fichiers WAR qui dépendent de ces ressources: impossible de faire non plus, un fichier WAR doit être déployé par environnement. – eljenso
Puisque vous déployez CommonWAR dans chaque fichier EAR, la même duplication existe et vous avez enveloppé le code dans un fichier WAR sans raison. – Robin