Quelqu'un utilise-t-il Jersey en mode intégré (pas d'environnement de servlet mais d'instance Grizzly autonome) avec succès avec un moteur de modèle ?
-
13-12-2019 - |
Question
Velocity, Freemarker, Japid, Rythm, un autre ?Ce que je recherche, c'est une solution similaire à celle proposée par JSP dans un environnement de servlet.Il devrait s'agir d'une forme d'implémentation de ViewProcessor, mais fonctionnant sur un déploiement Grizzly intégré autonome (architecture NIO).
La solution
Jersey dispose de supports pour les modèles Freemarker - voir Jersey-freemarker Module sur Maven.Cela fonctionne avec n'importe quel conteneur (c'est-à-dire non dépendant du servlet).Il y a aussi un échantillon de Freemarker dans l'espace de travail de Jersey qui montre comment l'utiliser - voir ici .
Autres conseils
Je pense que tous les moteurs de modèles que vous avez répertoriés pourraient être utilisés dans un environnement indépendant.Spécifiquement pour Rythm (car je suis l'auteur de ce truc), il charge des fichiers modèles à partir de différentes sources :
à partir du contenu String fourni :
String result = Rythm.render("hello @who", "world");
à partir d'un fichier trouvé dans le
rythm.root
paramètre:String result = Rythm.render("helloWorld.html", "world");
à partir d'un fichier trouvé à partir du chemin de classe si vous n'avez pas
rythm.root
installation
Cela ne dépend d'aucun conteneur de servlet, vous êtes donc libre de l'utiliser tant que vous disposez de JRE.Assurez-vous de définir rythm.noFileWrite
à true
si vous souhaitez l'utiliser dans GAE où aucune écriture de fichier n'est autorisée.
Le projet open source
http://www.bitplan.com/index.php/simplerest
fournit une classe de base de TemplateSource qui fera la majeure partie de la "forte levée" pour faire du maillot, grizzli et le moteur de modèle Rythm fonctionnent bien ensemble.